public function loadFrontEndScripts()
 {
     foreach ($this->googleFontsOptions as $googleFontOption) {
         $font = $googleFontOption->getValue();
         if (empty($font)) {
             continue;
         }
         wp_enqueue_style('tf-google-webfont-' . strtolower(str_replace(' ', '-', $font['name'])), TitanFrameworkOptionSelectGooglefont::formScript($font));
     }
 }
    public function display()
    {
        $this->echoOptionHeader(true);
        // set a default value
        $value = $this->getValue();
        if (is_serialized($value)) {
            $value = unserialize($value);
        }
        if ($value == array() || empty($value['name']) || empty($value['variants']) || empty($value['subsets'])) {
            $value = array('name' => 'Open Sans', 'variants' => array('400'), 'subsets' => array('latin'));
        }
        if (self::$firstLoad) {
            self::$firstLoad = false;
            self::createScript();
        }
        $allFonts = titan_get_googlefonts();
        ?>
<select class='tf-select-googlefont'><?php 
        foreach ($allFonts as $key => $fontStuff) {
            printf("<option value='%s' data-subset='%s' data-variants='%s'>%s</option>", esc_attr($key), esc_attr(json_encode($fontStuff['subsets'])), esc_attr(json_encode($fontStuff['variants'])), $fontStuff['name']);
        }
        ?>
</select><?php 
        // preview
        printf("<iframe src='%s'></iframe>", TitanFramework::getURL('iframe-googlefont-preview.php?f=' . $value['name'], __FILE__));
        // select variants
        echo "<p class='description tf-variants'>Choose the styles to include:</p>";
        echo "<fieldset>";
        $allVariants = array('100', '100italic', '200', '200italic', '300', '300italic', '400', 'italic', '500', '500italic', '600', '600italic', '700', '700italic', '800', '800italic', '900', '900italic');
        foreach ($allVariants as $key => $variant) {
            printf("<label style='display: none'><input type='checkbox' class='variant' data-variant='%s'/> %s</label>", esc_attr($variant), self::getVariantName($variant));
        }
        echo "</fieldset>";
        // select charsets
        echo "<p class='description tf-subsets'>Choose the subsets to include:</p>";
        echo "<fieldset>";
        $allSubsets = array("latin", "latin-ext", "greek", "vietnamese", "cyrillic", "cyrillic-ext", "khmer", "greek-ext");
        foreach ($allSubsets as $key => $subset) {
            printf("<label style='display: none'><input type='checkbox' class='subset' data-subset='%s'/> %s</label>", esc_attr($subset), $subset);
        }
        echo "</fieldset>";
        if (!is_serialized($value)) {
            $value = serialize($value);
        }
        printf("<input type='hidden' value='%s' name='%s' class='large-text'/>", esc_attr($value), esc_attr($this->getID()));
        $this->echoOptionFooter(false);
    }