function doctype() { if (qa_opt('embed_smileys')) { $this->smilies = array('(finger)' => array('name' => 'Finger', 'static' => 'images/emoticon-00173-middlefinger.png', 'animated' => 'images/emoticon-00173-middlefinger.gif'), '(bandit)' => array('name' => 'Bandit', 'static' => 'images/emoticon-00174-bandit.png', 'animated' => 'images/emoticon-00174-bandit.gif'), '(drunk)' => array('name' => 'Drunk', 'static' => 'images/emoticon-00175-drunk.png', 'animated' => 'images/emoticon-00175-drunk.gif'), '(smoking)' => array('name' => 'Smoking', 'static' => 'images/emoticon-00176-smoke.png', 'animated' => 'images/emoticon-00176-smoke.gif'), '(toivo)' => array('name' => 'Toivo', 'static' => 'images/emoticon-00177-toivo.png', 'animated' => 'images/emoticon-00177-toivo.gif'), '(rock)' => array('name' => 'Rock', 'static' => 'images/emoticon-00178-rock.png', 'animated' => 'images/emoticon-00178-rock.gif'), '(headbang)' => array('name' => 'Headbang', 'static' => 'images/emoticon-00179-headbang.png', 'animated' => 'images/emoticon-00179-headbang.gif'), '(bug)' => array('name' => 'Bug', 'static' => 'images/emoticon-00180-bug.png', 'animated' => 'images/emoticon-00180-bug.gif'), '(fubar)' => array('name' => 'Fubar', 'static' => 'images/emoticon-00181-fubar.png', 'animated' => 'images/emoticon-00181-fubar.gif'), '(poolparty)' => array('name' => 'Poolparty', 'static' => 'images/emoticon-00182-poolparty.png', 'animated' => 'images/emoticon-00182-poolparty.gif'), '(swear)' => array('name' => 'Swearing', 'static' => 'images/emoticon-00183-swear.png', 'animated' => 'images/emoticon-00183-swear.gif'), '(tmi)' => array('name' => 'TMI', 'static' => 'images/emoticon-00184-tmi.png', 'animated' => 'images/emoticon-00184-tmi.gif'), '(heidy)' => array('name' => 'Heidy', 'static' => 'images/emoticon-00185-heidy.png', 'animated' => 'images/emoticon-00185-heidy.gif'), '(mooning)' => array('name' => 'Mooning', 'static' => 'images/emoticon-00172-mooning.png', 'animated' => 'images/emoticon-00172-mooning.gif'), '(highfive)' => array('name' => 'High Five', 'static' => 'images/highfive.png', 'animated' => 'images/highfive.png'), '(facepalm)' => array('name' => 'Face Palm', 'static' => 'images/facepalm.png', 'animated' => 'images/facepalm.png'), '(fingers)' => array('name' => 'Fingers Crossed', 'static' => 'images/fingerscrossed.png', 'animated' => 'images/fingerscrossed.png'), '(lalala)' => array('name' => 'Lalala', 'static' => 'images/lalala.png', 'animated' => 'images/lalala.png'), '(waiting)' => array('name' => 'Waiting', 'static' => 'images/waiting.png', 'animated' => 'images/waiting.png'), '(tumbleweed)' => array('name' => 'Tumbleweed', 'static' => 'images/tumbleweed.png', 'animated' => 'images/tumbleweed.png'), '(wfh)' => array('name' => 'Working From Home', 'static' => 'images/wfh.png', 'animated' => 'images/wfh.png'), ':)' => array('name' => 'Smile', 'static' => 'images/emoticon-00100-smile.png', 'animated' => 'images/emoticon-00100-smile.gif'), ':(' => array('name' => 'Sad Smile', 'static' => 'images/emoticon-00101-sadsmile.png', 'animated' => 'images/emoticon-00101-sadsmile.gif'), ':D' => array('name' => 'Big Smile', 'static' => 'images/emoticon-00102-bigsmile.png', 'animated' => 'images/emoticon-00102-bigsmile.gif'), '8-)' => array('name' => 'Cool', 'static' => 'images/emoticon-00103-cool.png', 'animated' => 'images/emoticon-00103-cool.gif'), ':o' => array('name' => 'Wink', 'static' => 'images/emoticon-00105-wink.png', 'animated' => 'images/emoticon-00105-wink.gif'), ';(' => array('name' => 'Crying', 'static' => 'images/emoticon-00106-crying.png', 'animated' => 'images/emoticon-00106-crying.gif'), '(sweat)' => array('name' => 'Sweating', 'static' => 'images/emoticon-00107-sweating.png', 'animated' => 'images/emoticon-00107-sweating.gif'), ':|' => array('name' => 'Speechless', 'static' => 'images/emoticon-00108-speechless.png', 'animated' => 'images/emoticon-00108-speechless.gif'), ':*' => array('name' => 'Kiss', 'static' => 'images/emoticon-00109-kiss.png', 'animated' => 'images/emoticon-00109-kiss.gif'), ':P' => array('name' => 'Tongue Out', 'static' => 'images/emoticon-00110-tongueout.png', 'animated' => 'images/emoticon-00110-tongueout.gif'), '(blush)' => array('name' => 'Blush', 'static' => 'images/emoticon-00111-blush.png', 'animated' => 'images/emoticon-00111-blush.gif'), ':^)' => array('name' => 'Wondering', 'static' => 'images/emoticon-00112-wondering.png', 'animated' => 'images/emoticon-00112-wondering.gif'), '|-)' => array('name' => 'Sleepy', 'static' => 'images/emoticon-00113-sleepy.png', 'animated' => 'images/emoticon-00113-sleepy.gif'), '|(' => array('name' => 'Dull', 'static' => 'images/emoticon-00114-dull.png', 'animated' => 'images/emoticon-00114-dull.gif'), '(inlove)' => array('name' => 'In love', 'static' => 'images/emoticon-00115-inlove.png', 'animated' => 'images/emoticon-00115-inlove.gif'), ']:)' => array('name' => 'Evil grin', 'static' => 'images/emoticon-00116-evilgrin.png', 'animated' => 'images/emoticon-00116-evilgrin.gif'), '(talk)' => array('name' => 'Talking', 'static' => 'images/emoticon-00117-talking.png', 'animated' => 'images/emoticon-00117-talking.gif'), '(yawn)' => array('name' => 'Yawn', 'static' => 'images/emoticon-00118-yawn.png', 'animated' => 'images/emoticon-00118-yawn.gif'), '(puke)' => array('name' => 'Puke', 'static' => 'images/emoticon-00119-puke.png', 'animated' => 'images/emoticon-00119-puke.gif'), '(doh)' => array('name' => 'Doh!', 'static' => 'images/emoticon-00120-doh.png', 'animated' => 'images/emoticon-00120-doh.gif'), ':@' => array('name' => 'Angry', 'static' => 'images/emoticon-00121-angry.png', 'animated' => 'images/emoticon-00121-angry.gif'), '(wasntme)' => array('name' => 'It wasn\'t me', 'static' => 'images/emoticon-00122-itwasntme.png', 'animated' => 'images/emoticon-00122-itwasntme.gif'), '(party)' => array('name' => 'Party!!!', 'static' => 'images/emoticon-00123-party.png', 'animated' => 'images/emoticon-00123-party.gif'), ':S' => array('name' => 'Worried', 'static' => 'images/emoticon-00124-worried.png', 'animated' => 'images/emoticon-00124-worried.gif'), '(mm)' => array('name' => 'Mmm...', 'static' => 'images/emoticon-00125-mmm.png', 'animated' => 'images/emoticon-00125-mmm.gif'), '8-|' => array('name' => 'Nerd', 'static' => 'images/emoticon-00126-nerd.png', 'animated' => 'images/emoticon-00126-nerd.gif'), ':x' => array('name' => 'Lips Sealed', 'static' => 'images/emoticon-00127-lipssealed.png', 'animated' => 'images/emoticon-00127-lipssealed.gif'), '(hi)' => array('name' => 'Hi', 'static' => 'images/emoticon-00128-hi.png', 'animated' => 'images/emoticon-00128-hi.gif'), '(call)' => array('name' => 'Call', 'static' => 'images/emoticon-00129-call.png', 'animated' => 'images/emoticon-00129-call.gif'), '(devil)' => array('name' => 'Devil', 'static' => 'images/emoticon-00130-devil.png', 'animated' => 'images/emoticon-00130-devil.gif'), '(angel)' => array('name' => 'Angel', 'static' => 'images/emoticon-00131-angel.png', 'animated' => 'images/emoticon-00131-angel.gif'), '(envy)' => array('name' => 'Envy', 'static' => 'images/emoticon-00132-envy.png', 'animated' => 'images/emoticon-00132-envy.gif'), '(wait)' => array('name' => 'Wait', 'static' => 'images/emoticon-00133-wait.png', 'animated' => 'images/emoticon-00133-wait.gif'), '(bear)' => array('name' => 'Bear', 'static' => 'images/emoticon-00134-bear.png', 'animated' => 'images/emoticon-00134-bear.gif'), '(makeup)' => array('name' => 'Make-up', 'static' => 'images/emoticon-00135-makeup.png', 'animated' => 'images/emoticon-00135-makeup.gif'), '(giggle)' => array('name' => 'Covered Laugh', 'static' => 'images/emoticon-00136-giggle.png', 'animated' => 'images/emoticon-00136-giggle.gif'), '(clap)' => array('name' => 'Clapping Hands', 'static' => 'images/emoticon-00137-clapping.png', 'animated' => 'images/emoticon-00137-clapping.gif'), '(think)' => array('name' => 'Thinking', 'static' => 'images/emoticon-00138-thinking.png', 'animated' => 'images/emoticon-00138-thinking.gif'), '(bow)' => array('name' => 'Bow', 'static' => 'images/emoticon-00139-bow.png', 'animated' => 'images/emoticon-00139-bow.gif'), '(rofl)' => array('name' => 'Rolling on the floor laughing', 'static' => 'images/emoticon-00140-rofl.png', 'animated' => 'images/emoticon-00140-rofl.gif'), '(whew)' => array('name' => 'Whew', 'static' => 'images/emoticon-00141-whew.png', 'animated' => 'images/emoticon-00141-whew.gif'), '(happy)' => array('name' => 'Happy', 'static' => 'images/emoticon-00142-happy.png', 'animated' => 'images/emoticon-00142-happy.gif'), '(smirk)' => array('name' => 'Smirking', 'static' => 'images/emoticon-00143-smirk.png', 'animated' => 'images/emoticon-00143-smirk.gif'), '(nod)' => array('name' => 'Nodding', 'static' => 'images/emoticon-00144-nod.png', 'animated' => 'images/emoticon-00144-nod.gif'), '(shake)' => array('name' => 'Shaking', 'static' => 'images/emoticon-00145-shake.png', 'animated' => 'images/emoticon-00145-shake.gif'), '(punch)' => array('name' => 'Punch', 'static' => 'images/emoticon-00146-punch.png', 'animated' => 'images/emoticon-00146-punch.gif'), '(emo)' => array('name' => 'Emo', 'static' => 'images/emoticon-00147-emo.png', 'animated' => 'images/emoticon-00147-emo.gif'), '(y)' => array('name' => 'Yes', 'static' => 'images/emoticon-00148-yes.png', 'animated' => 'images/emoticon-00148-yes.gif'), '(n)' => array('name' => 'No', 'static' => 'images/emoticon-00149-no.png', 'animated' => 'images/emoticon-00149-no.gif'), '(handshake)' => array('name' => 'Shaking Hands', 'static' => 'images/emoticon-00150-handshake.png', 'animated' => 'images/emoticon-00150-handshake.gif'), '(skype)' => array('name' => 'Skype', 'static' => 'images/emoticon-00151-skype.png', 'animated' => 'images/emoticon-00151-skype.gif'), '(h)' => array('name' => 'Heart', 'static' => 'images/emoticon-00152-heart.png', 'animated' => 'images/emoticon-00152-heart.gif'), '(u)' => array('name' => 'Broken heart', 'static' => 'images/emoticon-00153-brokenheart.png', 'animated' => 'images/emoticon-00153-brokenheart.gif'), '(e)' => array('name' => 'Mail', 'static' => 'images/emoticon-00154-mail.png', 'animated' => 'images/emoticon-00154-mail.gif'), '(f)' => array('name' => 'Flower', 'static' => 'images/emoticon-00155-flower.png', 'animated' => 'images/emoticon-00155-flower.gif'), '(rain)' => array('name' => 'Rain', 'static' => 'images/emoticon-00156-rain.png', 'animated' => 'images/emoticon-00156-rain.gif'), '(sun)' => array('name' => 'Sun', 'static' => 'images/emoticon-00157-sun.png', 'animated' => 'images/emoticon-00157-sun.gif'), '(o)' => array('name' => 'Time', 'static' => 'images/emoticon-00158-time.png', 'animated' => 'images/emoticon-00158-time.gif'), '(music)' => array('name' => 'Music', 'static' => 'images/emoticon-00159-music.png', 'animated' => 'images/emoticon-00159-music.gif'), '(~)' => array('name' => 'Movie', 'static' => 'images/emoticon-00160-movie.png', 'animated' => 'images/emoticon-00160-movie.gif'), '(mp)' => array('name' => 'Phone', 'static' => 'images/emoticon-00161-phone.png', 'animated' => 'images/emoticon-00161-phone.gif'), '(coffee)' => array('name' => 'Coffee', 'static' => 'images/emoticon-00162-coffee.png', 'animated' => 'images/emoticon-00162-coffee.gif'), '(pizza)' => array('name' => 'Pizza', 'static' => 'images/emoticon-00163-pizza.png', 'animated' => 'images/emoticon-00163-pizza.gif'), '(cash)' => array('name' => 'Cash', 'static' => 'images/emoticon-00164-cash.png', 'animated' => 'images/emoticon-00164-cash.gif'), '(muscle)' => array('name' => 'Muscle', 'static' => 'images/emoticon-00165-muscle.png', 'animated' => 'images/emoticon-00165-muscle.gif'), '(^)' => array('name' => 'Cake', 'static' => 'images/emoticon-00166-cake.png', 'animated' => 'images/emoticon-00166-cake.gif'), '(beer)' => array('name' => 'Beer', 'static' => 'images/emoticon-00167-beer.png', 'animated' => 'images/emoticon-00167-beer.gif'), '(d)' => array('name' => 'Drink', 'static' => 'images/emoticon-00168-drink.png', 'animated' => 'images/emoticon-00168-drink.gif'), '(dance)' => array('name' => 'Dance', 'static' => 'images/emoticon-00169-dance.png', 'animated' => 'images/emoticon-00169-dance.gif'), '(ninja)' => array('name' => 'Ninja', 'static' => 'images/emoticon-00170-ninja.png', 'animated' => 'images/emoticon-00170-ninja.gif'), '(*)' => array('name' => 'Star', 'static' => 'images/emoticon-00171-star.png', 'animated' => 'images/emoticon-00171-star.gif')); } qa_html_theme_base::doctype(); }
function doctype() { $this->content['navigation']['footer']['feedback']['label'] = '<div class="feedback-image"></div>'; $this->content['search']['button_label'] = ''; $this->content['logo'] = '<A HREF="../" CLASS="qa-logo-link">' . qa_opt('site_title') . '</A>'; qa_html_theme_base::doctype(); }
function doctype() { qa_html_theme_base::doctype(); $qw_notification_id = qa_get('ra_notification'); if (isset($qw_notification_id)) { qw_set_notification_as_read($qw_notification_id); } }
/** * Doctype function */ function doctype() { if (!property_exists('qa_html_theme_base', 'isRTL')) { /*Fall back for the version 1.6.3*/ $this->isRTL = isset($this->content['direction']) && $this->content['direction'] === 'rtl'; } parent::doctype(); }
function doctype() { qa_html_theme_base::doctype(); if (isset($this->content['a_form'])) { $a_form = $this->content['a_form']; unset($this->content['a_form']); $this->content['a_form'] = $a_form; } }
public function doctype() { if (qa_caching_main::now_caching()) { if (isset($this->content['notices'])) { unset($this->content['notices']); } } qa_html_theme_base::doctype(); }
function doctype() { // print HTML5 doctype with full plugin compatibility ob_start(); qa_html_theme_base::doctype(); $output = ob_get_clean(); $doctype = str_replace('<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">', '<!DOCTYPE html>', $output); $this->output($doctype); }
function doctype() { $this->can_comment = qa_user_permit_error('permit_post_c') == false; global $qa_state; $this->qa_state = $qa_state; if (!isset($_POST['ajax_comment_content']) || !$this->can_comment) { qa_html_theme_base::doctype(); } }
function doctype() { $this->widgets = get_all_widgets(); // Setup Navigation global $qa_request; //var_dump($qa_request); $this->content['navigation']['user']['widgets'] = array('label' => 'Theme Widgets', 'url' => qa_path_html('widgets'), 'icon' => 'icon-puzzle'); if ($qa_request == 'widgets') { $this->content['navigation']['user']['widgets']['selected'] = true; $this->content['navigation']['user']['selected'] = true; $this->template = "widgets"; $this->content['site_title'] = "Theme Widgets"; $this->content['error'] = ""; $this->content['suggest_next'] = ""; $this->content['title'] = "Theme Widgets"; //$this->content['custom']=''; $saved = false; if (qa_clicked('cs_remove_all_button')) { qa_db_query_sub('TRUNCATE TABLE ^cs_widgets'); $saved = true; } if (qa_clicked('cs_reset_widgets_button')) { $handle = fopen(Q_THEME_DIR . '/demo_content/widget_builder.sql', 'r'); $sql = ''; if ($handle) { while (($line = fgets($handle, 4096)) !== false) { $sql .= trim(' ' . trim($line)); if (substr($sql, -strlen(';')) == ';') { qa_db_query_sub($sql); $sql = ''; } } fclose($handle); } $saved = true; } $cs_page = ' <div id="ra-widgets"> <div class="widget-list col-sm-5"> ' . $this->cs_get_widgets() . ' </div> <div class="widget-postions col-sm-7"> ' . $this->cs_get_widgets_positions() . ' </div> </div> <div class="form-widget-button-holder"> <form class="form-horizontal" method="post"> <input class="qa-form-tall-button btn-primary" type="submit" name="cs_remove_all_button" value="Remove All Widgets" title=""> <input class="qa-form-tall-button btn-primary" type="submit" name="cs_reset_widgets_button" value="Reset All Widgets To Theme Default" title=""> </form> </div> '; $this->content['custom'] = $cs_page; } qa_html_theme_base::doctype(); }
function doctype() { if (qa_opt('priv_active') && $this->template == 'user' && qa_get_logged_in_handle() === $this->_user_handle()) { if (!isset($this->content['navigation']['sub'])) { $this->content['navigation']['sub'] = array('profile' => array('url' => qa_path_html('user/' . $this->_user_handle(), null, qa_opt('site_url')), 'label' => $this->_user_handle(), 'selected' => !qa_get('tab') ? true : false), 'privileges' => array('url' => qa_path_html('user/' . $this->_user_handle(), array('tab' => 'privileges'), qa_opt('site_url')), 'label' => qa_opt('priv_title'), 'selected' => qa_get('tab') == 'privileges' ? true : false)); } else { $this->content['navigation']['sub']['privileges'] = array('url' => qa_path_html('user/' . $this->_user_handle(), array('tab' => 'privileges'), qa_opt('site_url')), 'label' => qa_opt('priv_title'), 'selected' => qa_get('tab') == 'privileges' ? true : false); } } qa_html_theme_base::doctype(); }
function doctype() { parent::doctype(); if (QA_FINAL_EXTERNAL_USERS) { return; } // check if logged in $handle = qa_get_logged_in_handle(); if (isset($handle)) { if (qa_request() == '' && count($_GET) > 0) { // Check if we need to associate another provider $this->process_login(); } // see if the account pages are accessed $tmpl = array('account', 'favorites'); $user_pages = array('user', 'user-wall', 'user-activity', 'user-questions', 'user-answers'); $logins_page = qa_request() == 'logins' && !qa_get('confirm'); $urlhandle = qa_request_part(1); if (in_array($this->template, $tmpl) || $logins_page || in_array($this->template, $user_pages) && $handle == $urlhandle) { // add a navigation item $this->content['navigation']['sub']['logins'] = array('label' => qa_lang_html('plugin_open/my_logins_nav'), 'url' => qa_path_html('logins'), 'selected' => $logins_page); return; } } else { $title = qa_lang_html('plugin_open/login_title'); $descr = qa_lang_html('plugin_open/login_description'); // hide login/register links from navigation on any page if (qa_opt('open_login_hideform') == '1') { unset($this->content['navigation']['user']['login']); unset($this->content['navigation']['user']['register']); } // then check if login/register pages are accessed $tmpl = array('register', 'login'); if (!in_array($this->template, $tmpl)) { return; } // hide regular login/register form on those pages only if (qa_opt('open_login_hideform') == '1') { $this->content['title'] = $title; $this->content['form'] = null; } // add some custom text if (!empty($this->content['custom'])) { $content = str_ireplace('<BR>', '', $this->content['custom']); $this->content['custom'] = "<div><p>{$descr}</p>{$content}</div>"; if ($this->content['form'] != null) { $this->content['custom'] = "<br /><br /><h1>{$title}</h1>{$this->content['custom']}"; } } } }
function doctype() { global $qa_theme_switch_is_mobile; if ($qa_theme_switch_is_mobile && qa_opt('theme_switch_enable_mobile') && qa_opt('site_theme') != qa_opt('theme_switch_mobile')) { $this->content['navigation']['footer']['theme_switch'] = array('label' => 'Mobile Version', 'url' => qa_path($this->request, array('theme_switch' => qa_opt('theme_switch_mobile')))); } else { if (qa_opt('theme_switch_enable_mobile') && qa_opt('site_theme') == qa_opt('theme_switch_mobile')) { $this->content['navigation']['footer']['theme_switch'] = array('label' => 'Full Site', 'url' => qa_path($this->request, array('theme_switch' => qa_opt('theme_switch_default')))); } } if (@$_GET['theme_switch']) { /* if($userid = qa_get_logged_in_userid()) { qa_db_query_sub( 'INSERT INTO ^usermeta (user_id,meta_key,meta_value) VALUES (#,$,$) ON DUPLICATE KEY UPDATE meta_value=$', $userid,'custom_theme',$_GET['theme_switch'],$_GET['theme_switch'] ); } */ setcookie('qa_theme_switch', $_GET['theme_switch'], time() + 86400 * 365, '/', QA_COOKIE_DOMAIN); qa_redirect($this->request, array()); } if (qa_opt('theme_switch_enable')) { if ($this->template == 'user' && !qa_get('tab')) { // add theme switcher $handle = preg_replace('/^[^\\/]+\\/([^\\/]+).*/', "\$1", $this->request); $theme_form = $this->theme_switch_form(); if ($theme_form) { // insert our form if ($this->content['q_list']) { // paranoia // array splicing kungfu thanks to Stack Exchange // This adds form-theme-switch before q_list $keys = array_keys($this->content); $vals = array_values($this->content); $insertBefore = array_search('q_list', $keys); $keys2 = array_splice($keys, $insertBefore); $vals2 = array_splice($vals, $insertBefore); $keys[] = 'form-theme-switch'; $vals[] = $theme_form; $this->content = array_merge(array_combine($keys, $vals), array_combine($keys2, $vals2)); } else { $this->content['form-theme-switch'] = $theme_form; } // this shouldn't happen } } } qa_html_theme_base::doctype(); }
function doctype() { if (qa_post_text('merge_from') && qa_get_logged_in_level() >= QA_USER_LEVEL_ADMIN) { $merged = qa_merge_do_merge(); if ($merged === true) { qa_redirect(qa_q_request(qa_post_text('merge_to'), null), array('merged' => qa_post_text('merge_from'))); } else { $error1 = $merged[0]; $error2 = $merged[1]; $this->content['error'] = "Error merging posts."; } } qa_html_theme_base::doctype(); }
function doctype() { qa_html_theme_base::doctype(); if (qa_opt('cp_enable') && ($this->template == 'ask' || isset($this->content['q_list']) || isset($this->content['q_view']))) { global $qa_request; global $wiki_enable; if ($this->template == 'ask' && !qa_user_permit_error('permit_post_q') && !qa_opt('site_maintenance') && qa_permit_check('permit_create_cp')) { $this->content['form']['tags'] .= ' onSubmit="pollSubmit(event)"'; $this->content['form']['fields'][] = array('label' => qa_lang('cp/checkbox_text'), 'tags' => 'NAME="cp_community" ID="cp_community"', 'type' => 'checkbox', 'value' => qa_post_text('cp_community') ? 1 : 0); } if (isset($this->content['q_view'])) { $qid = $this->content['q_view']['raw']['postid']; $author = $this->content['q_view']['raw']['userid']; if (!isset($wiki_enable)) { $result = qa_db_query_sub('SELECT * FROM ^postmeta WHERE meta_key=$ AND post_id=#', 'is_community', $qid); $wiki_enable = $result->num_rows > 0; } if ($wiki_enable) { // is a community post $this->content['title'] .= ' ' . qa_lang('cp/question_title'); // $this->content['q_view']['content'] = @$this->content['q_view']['content'].'<div id="qa-wiki-div">'.$this->getPollDiv($qid,qa_get_logged_in_userid()).'</div>'; $this->content['q_view']['main_form_tags'] = @$this->content['q_view']['main_form_tags'] . ' class="qa-community-posts"'; // print_r($this->content['q_view']['form']['buttons']); if (isset($this->content['q_view']['form']['buttons']['edit'])) { $this->content['q_view']['form']['buttons']['edit']['label'] = qa_lang_html('cp/contribute'); $this->content['q_view']['form']['buttons']['edit']['popup'] = qa_lang_html('cp/contribute_description'); } unset($this->content['q_view']['form']['buttons']['answer']); unset($this->content['q_view']['form']['buttons']['comment']); unset($this->content['a_form']); unset($this->content['c_form']); } } if (isset($this->content['q_list'])) { $wiki_array = qa_db_read_all_assoc(qa_db_query_sub('SELECT * FROM ^postmeta WHERE meta_key=$', 'is_community')); foreach ($wiki_array as $q) { $wiki[(int) $q['post_id']] = $q['meta_value']; } foreach ($this->content['q_list']['qs'] as $idx => $question) { if (isset($wiki[$question['raw']['postid']])) { $this->content['q_list']['qs'][$idx]['title'] .= ' ' . qa_lang('cp/question_title'); } } } } }
function doctype() { if (@$this->content['error'] == qa_lang_html('main/page_not_found') && preg_match('/^[0-9]+\\//', $this->request) !== false) { $pid = preg_replace('/\\/.*/', '', $this->request); $merged = qa_db_read_one_assoc(qa_db_query_sub("SELECT ^posts.postid as postid,^posts.title as title FROM ^postmeta, ^posts WHERE ^postmeta.meta_key='merged_with' AND ^postmeta.post_id=# AND ^posts.postid=^postmeta.meta_value", $pid), true); if ($merged) { qa_redirect(qa_q_request($merged['postid'], $merged['title']), array('merged' => $pid)); } } else { if (qa_get('merged')) { $this->content['error'] = str_replace('^post', qa_get('merged'), qa_opt('merge_question_merged')); } } if (qa_post_text('ajax_merge_get_from')) { return; } qa_html_theme_base::doctype(); }
function doctype() { if (qa_opt($this->opt) === '1') { // fetch all widgets into a basic list $sql = 'SELECT * FROM ^' . $this->pluginkey . ' ORDER BY ordering'; $widgets = qa_db_read_all_assoc(qa_db_query_sub($sql)); foreach ($widgets as $wid) { $wid['pages'] = explode(',', @$wid['pages']); $show_all = $wid['pages'][0] == 'all'; $show_tmpl = in_array($this->template, $wid['pages']); $show_custom = in_array('custom:' . $this->request, $wid['pages']); if ($show_all || $show_tmpl || $show_custom) { $this->widgets[] = $wid; } } } parent::doctype(); }
function doctype() { if ($this->request == 'admin/permissions' && qa_get_logged_in_level() >= QA_USER_LEVEL_ADMIN) { $permits[] = 'signature_allow'; $permits[] = 'signature_edit_allow'; foreach ($permits as $optionname) { $value = qa_opt($optionname); $optionfield = array('id' => $optionname, 'label' => qa_lang_html('signature_plugin/' . $optionname) . ':', 'tags' => 'NAME="option_' . $optionname . '" ID="option_' . $optionname . '"', 'value' => $value, 'error' => qa_html(@$errors[$optionname])); $widest = QA_PERMIT_USERS; $narrowest = QA_PERMIT_ADMINS; $permitoptions = qa_admin_permit_options($widest, $narrowest, !QA_FINAL_EXTERNAL_USERS && qa_opt('confirm_user_emails')); if (count($permitoptions) > 1) { qa_optionfield_make_select($optionfield, $permitoptions, $value, $value == QA_PERMIT_CONFIRMED ? QA_PERMIT_USERS : min(array_keys($permitoptions))); } $this->content['form']['fields'][$optionname] = $optionfield; $this->content['form']['fields'][$optionname . '_points'] = array('id' => $optionname . '_points', 'tags' => 'NAME="option_' . $optionname . '_points" ID="option_' . $optionname . '_points"', 'type' => 'number', 'value' => qa_opt($optionname . '_points'), 'prefix' => qa_lang_html('admin/users_must_have') . ' ', 'note' => qa_lang_html('admin/points')); $checkboxtodisplay[$optionname . '_points'] = '(option_' . $optionname . '==' . qa_js(QA_PERMIT_POINTS) . ') ||(option_' . $optionname . '==' . qa_js(QA_PERMIT_POINTS_CONFIRMED) . ')'; } qa_set_display_rules($this->content, $checkboxtodisplay); } if (qa_opt('signatures_enable')) { // add user signature if ($this->template == 'user' && isset($this->content['form_activity']) && !qa_get('tab')) { $sig_form = $this->content['user_signature_form']; // from overrides // insert our form if (isset($this->content['q_list'])) { // array splicing kungfu thanks to Stack Exchange // This adds form-signature before q_list $keys = array_keys($this->content); $vals = array_values($this->content); $insertBefore = array_search('q_list', $keys); $keys2 = array_splice($keys, $insertBefore); $vals2 = array_splice($vals, $insertBefore); $keys[] = 'form-signature'; $vals[] = $sig_form; $this->content = array_merge(array_combine($keys, $vals), array_combine($keys2, $vals2)); } else { $this->content['form-signature'] = $sig_form; } } } qa_html_theme_base::doctype(); }
function doctype() { if (qa_get_logged_in_userid() && qa_opt('user_act_list_active') && qa_opt('user_act_list_new') && ($this->template != 'user' || qa_get_logged_in_handle() != $this->_user_handle())) { qa_db_query_sub('CREATE TABLE IF NOT EXISTS ^usermeta ( meta_id bigint(20) unsigned NOT NULL AUTO_INCREMENT, user_id bigint(20) unsigned NOT NULL, meta_key varchar(255) DEFAULT NULL, meta_value longtext, PRIMARY KEY (meta_id), UNIQUE (user_id,meta_key) ) ENGINE=MyISAM DEFAULT CHARSET=utf8'); $last_visit = qa_db_read_one_value(qa_db_query_sub('SELECT UNIX_TIMESTAMP(meta_value) FROM ^usermeta WHERE user_id=# AND meta_key=$', qa_get_logged_in_userid(), 'visited_profile'), true); if ($last_visit) { $events = qa_db_read_one_value(qa_db_query_sub('SELECT COUNT(event) FROM ^eventlog WHERE userid=# AND DATE_SUB(CURDATE(),INTERVAL # DAY) <= datetime AND FROM_UNIXTIME(#) <= datetime AND event LIKE \'in_%\'' . (qa_opt('user_act_list_max') ? ' LIMIT ' . (int) qa_opt('user_act_list_max') : ''), qa_get_logged_in_userid(), qa_opt('user_act_list_age'), $last_visit)); if ($events) { $tooltip = str_replace('#', $events, qa_opt('user_act_list_new_text')); // pluralizing preg_match('/\\S+\\/\\S+/', qa_opt('user_act_list_new_text'), $voicea); $voices = explode('/', $voicea[0]); foreach ($voices as $voice) { if (!preg_match('/[0-9]/', substr($voice, -1))) { $tooltip = preg_replace('/\\S+\\/\\S+/', $voice, $tooltip); break; } else { if ((int) substr($voice, -1) >= $events) { $tooltip = preg_replace('/\\S+\\/\\S+/', substr($voice, 0, -1), $tooltip); break; } } } $this->content['loggedin']['suffix'] = @$this->content['loggedin']['suffix'] . ' <a class="qa-history-new-event-link" title="' . $tooltip . '" href="' . qa_path_html('user/' . qa_get_logged_in_handle(), array('tab' => 'history'), qa_opt('site_url')) . '"><span class="qa-history-new-event-count">' . $events . '</span></a>'; } } } if (qa_opt('user_act_list_active') && $this->template == 'user' && (qa_get_logged_in_handle() === $this->_user_handle() || qa_opt('user_act_list_show'))) { if (!isset($this->content['navigation']['sub'])) { $this->content['navigation']['sub'] = array('profile' => array('url' => qa_path_html('user/' . $this->_user_handle(), null, qa_opt('site_url')), 'label' => $this->_user_handle(), 'selected' => !qa_get('tab') ? true : false), 'history' => array('url' => qa_path_html('user/' . $this->_user_handle(), array('tab' => 'history'), qa_opt('site_url')), 'label' => qa_opt('user_act_list_tab'), 'selected' => qa_get('tab') == 'history' ? true : false)); } else { $this->content['navigation']['sub']['history'] = array('url' => qa_path_html('user/' . $this->_user_handle(), array('tab' => 'history'), qa_opt('site_url')), 'label' => qa_opt('user_act_list_tab'), 'selected' => qa_get('tab') == 'history' ? true : false); } } qa_html_theme_base::doctype(); }
function doctype() { if ($this->template == 'register') { if (qa_opt('tos_enable') && qa_opt('tos_serverside') == 0) { $this->jsTOS = true; //var_dump($this->content['form']['fields']['handle']['value']); $this->content['form']['buttons']['register']['tags'] .= ' id="register"'; $TOS = qa_post_text('TOS'); if (!empty($this->content['form']['fields']['handle']['value']) && !isset($TOS)) { $error = qa_opt('tos_error'); } $this->content['form']['fields']['tos'] = array('label' => qa_opt('tos_checkbox_label'), 'tags' => 'NAME="TOS" ID="TOS"', 'value' => qa_html(@$TOS), 'error' => qa_html(@$error), 'type' => 'checkbox'); $tos_content = qa_opt('tos_content'); if (!empty($tos_content)) { $this->content['form']['fields']['tos_content'] = array('tags' => 'NAME="tos_content" ID="tos_content" READONLY', 'type' => 'textarea', 'rows' => '6', 'value' => qa_html(qa_opt('tos_content'))); } } } qa_html_theme_base::doctype(); }
function doctype() { if ($this->request == 'admin/permissions' && qa_get_logged_in_level() >= QA_USER_LEVEL_ADMIN) { $permits[] = 'xmlrpc_access'; foreach ($permits as $optionname) { $value = qa_opt($optionname); $optionfield = array('id' => $optionname, 'label' => qa_lang_html('xmlrpc/' . $optionname) . ':', 'tags' => 'NAME="option_' . $optionname . '" ID="option_' . $optionname . '"', 'value' => $value, 'error' => qa_html(@$errors[$optionname])); $widest = QA_PERMIT_USERS; $narrowest = QA_PERMIT_ADMINS; $permitoptions = qa_admin_permit_options($widest, $narrowest, !QA_FINAL_EXTERNAL_USERS && qa_opt('confirm_user_emails')); if (count($permitoptions) > 1) { qa_optionfield_make_select($optionfield, $permitoptions, $value, $value == QA_PERMIT_CONFIRMED ? QA_PERMIT_USERS : min(array_keys($permitoptions))); } $this->content['form']['fields'][$optionname] = $optionfield; $this->content['form']['fields'][$optionname . '_points'] = array('id' => $optionname . '_points', 'tags' => 'NAME="option_' . $optionname . '_points" ID="option_' . $optionname . '_points"', 'type' => 'number', 'value' => qa_opt($optionname . '_points'), 'prefix' => qa_lang_html('admin/users_must_have') . ' ', 'note' => qa_lang_html('admin/points')); $checkboxtodisplay[$optionname . '_points'] = '(option_' . $optionname . '==' . qa_js(QA_PERMIT_POINTS) . ') ||(option_' . $optionname . '==' . qa_js(QA_PERMIT_POINTS_CONFIRMED) . ')'; } qa_set_display_rules($this->content, $checkboxtodisplay); } qa_html_theme_base::doctype(); }
function doctype() { if ($this->request == 'admin/emails') { if (qa_post_text('option_notify_admin_a_post')) { qa_opt('notify_admin_a_post', (bool) qa_post_text('option_notify_admin_a_post')); qa_opt('notify_admin_c_post', (bool) qa_post_text('option_notify_admin_c_post')); } foreach ($this->content['form']['fields'] as $key => $val) { $arr[$key] = $val; if ($key == 'notify_admin_q_post') { $arr['notify_admin_a_post'] = array('id' => 'notify_admin_a_post', 'label' => 'Email this address when an answer is posted', 'tags' => 'NAME="option_notify_admin_a_post" ID="option_notify_admin_a_post"', 'value' => qa_opt('notify_admin_a_post'), 'type' => 'checkbox', 'error' => ''); $arr['notify_admin_c_post'] = array('id' => 'notify_admin_a_post', 'label' => 'Email this address when a comment is posted', 'tags' => 'NAME="option_notify_admin_c_post" ID="option_notify_admin_c_post"', 'value' => qa_opt('notify_admin_c_post'), 'type' => 'checkbox', 'error' => ''); } $this->content['form']['fields'] = $arr; } } if (qa_opt('admin_plus_notify') && qa_get_logged_in_level() >= QA_USER_LEVEL_ADMIN && (time() - (int) qa_opt('admin_plus_notify_checked')) / 3600 > qa_opt('admin_plus_notify_hours')) { qa_opt('admin_plus_notify_checked', time()); $pluginfiles = glob(QA_PLUGIN_DIR . '*/qa-plugin.php'); if (count($pluginfiles)) { require_once QA_INCLUDE_DIR . 'qa-app-admin.php'; $cnt = 0; foreach ($pluginfiles as $pluginfile) { $plugindirectory = dirname($pluginfile) . '/'; $contents = file_get_contents($pluginfile); $metadata = qa_admin_addon_metadata($contents, array('version' => 'Plugin Version', 'update' => 'Plugin Update Check URI')); if (@$metadata['version'] && @$metadata['update']) { $newdata = qa_admin_addon_metadata(qa_retrieve_url($metadata['update']), array('version' => 'Plugin Version', 'uri' => 'Plugin URI')); if (strlen(@$newdata['version']) && strcmp($newdata['version'], $metadata['version'])) { $this->content['notices'][] = qa_notice_form('updates', qa_viewer_html(qa_opt('admin_plus_notify_text'), 'html')); $this->content['script'][] = "<script type=\"text/javascript\">jQuery(document).ready(function(){qa_reveal(document.getElementById('notice_updates'), 'notice');});</script>"; break; } } } } } qa_html_theme_base::doctype(); }
function doctype() { /* The following code originates from q2a plugin "History" by NoahY and has been modified by q2apro.com * It is licensed under GPLv3 http://www.gnu.org/licenses/gpl.html * Link to plugin: https://github.com/NoahY/q2a-history */ $userid = qa_get_logged_in_userid(); if (qa_opt('q2apro_onsitenotifications_enabled') && $userid) { $last_visit = qa_db_read_one_value(qa_db_query_sub('SELECT UNIX_TIMESTAMP(meta_value) FROM ^usermeta WHERE user_id=# AND meta_key=$', $userid, 'visited_profile'), true); // first time visitor, we set the last visit manually in the past if (is_null($last_visit)) { $last_visit = '1981-03-31 06:25:00'; } // select and count all in_eventcount that are newer as last visit $eventcount = qa_db_read_one_value(qa_db_query_sub('SELECT COUNT(event) FROM ^eventlog WHERE FROM_UNIXTIME(#) <= datetime AND DATE_SUB(CURDATE(),INTERVAL # DAY) <= datetime AND ( (userid=# AND event LIKE "in_%") OR ((event LIKE "u_message" OR event LIKE "u_wall_post") AND params LIKE "userid=#\\t%") ) ', $last_visit, qa_opt('q2apro_onsitenotifications_maxage'), $userid, $userid)); // q2apro notification tooltip if ($eventcount > 0) { if ($eventcount == 1) { // only one event $tooltip = qa_lang('q2apro_onsitenotifications_lang/one_notification'); } else { $tooltip = $eventcount . ' ' . qa_lang('q2apro_onsitenotifications_lang/x_notifications'); } $classSuffix = 'new'; // add notify bubble to user navigation highlighted } else { $tooltip = qa_lang('q2apro_onsitenotifications_lang/show_notifications'); $eventcount = qa_opt('q2apro_onsitenotifications_nill'); $classSuffix = 'nill'; // add notify bubble to user navigation } $html = '<div id="osnbox"> <a class="osn-new-events-link" title="' . $tooltip . '"><span class="notifybub ntfy-event-' . $classSuffix . '">' . $eventcount . '</span></a> </div>'; // add to user panel $this->content['loggedin']['suffix'] = @$this->content['loggedin']['suffix'] . ' ' . $html; } qa_html_theme_base::doctype(); }
function doctype() { qa_html_theme_base::doctype(); if (qa_opt('badge_active')) { // tabs if ($this->template == 'user' && !qa_opt('badge_admin_user_field_no_tab')) { if (!isset($this->content['navigation']['sub'])) { $this->content['navigation']['sub'] = array('profile' => array('url' => qa_path_html('user/' . $this->_user_handle(), null, qa_opt('site_url')), 'label' => $this->_user_handle(), 'selected' => !qa_get('tab') ? true : false), 'badges' => array('url' => qa_path_html('user/' . $this->_user_handle(), array('tab' => 'badges'), qa_opt('site_url')), 'label' => qa_lang('badges/badges'), 'selected' => qa_get('tab') == 'badges' ? true : false)); } else { $this->content['navigation']['sub']['badges'] = array('url' => qa_path_html('user/' . $this->_user_handle(), array('tab' => 'badges'), qa_opt('site_url')), 'label' => qa_lang('badges/badges'), 'selected' => qa_get('tab') == 'badges' ? true : false); } } require_once QA_INCLUDE_DIR . 'qa-app-users.php'; $userid = qa_get_logged_in_userid(); if (!$userid) { return; } // not logged in? die. // first visit check $user = @qa_db_read_one_assoc(qa_db_query_sub('SELECT ^achievements.user_id AS uid,^achievements.oldest_consec_visit AS ocv,^achievements.longest_consec_visit AS lcv,^achievements.total_days_visited AS tdv,^achievements.last_visit AS lv,^achievements.first_visit AS fv, ^userpoints.points as points FROM ^achievements, ^userpoints WHERE ^achievements.user_id=# AND ^userpoints.userid=#', $userid, $userid), true); if (!$user['uid']) { qa_db_query_sub('INSERT INTO ^achievements (user_id, first_visit, oldest_consec_visit, longest_consec_visit, last_visit, total_days_visited, questions_read, posts_edited) VALUES (#, NOW(), NOW(), #, NOW(), #, #, #) ON DUPLICATE KEY UPDATE first_visit=NOW(), oldest_consec_visit=NOW(), longest_consec_visit=#, last_visit=NOW(), total_days_visited=#, questions_read=#, posts_edited=#', $userid, 1, 1, 0, 0, 1, 1, 0, 0); return; } // check lapse in days since last visit // using julian days $todayj = GregorianToJD(date('n'), date('j'), date('Y')); $last_visit = strtotime($user['lv']); $lastj = GregorianToJD(date('n', $last_visit), date('j', $last_visit), date('Y', $last_visit)); $last_diff = $todayj - $lastj; $oldest_consec = strtotime($user['ocv']); $oldest_consecj = GregorianToJD(date('n', $oldest_consec), date('j', $oldest_consec), date('Y', $oldest_consec)); $oldest_consec_diff = $todayj - $oldest_consecj + 1; // include the first day $first_visit = strtotime($user['fv']); $first_visitj = GregorianToJD(date('n', $first_visit), date('j', $first_visit), date('Y', $first_visit)); $first_visit_diff = $todayj - $first_visitj; if ($last_diff < 0) { return; } // error if ($last_diff < 2) { // one day or less, update last visit if ($oldest_consec_diff > $user['lcv']) { $user['lcv'] = $oldest_consec_diff; qa_db_query_sub('UPDATE ^achievements SET last_visit=NOW(), longest_consec_visit=#, total_days_visited=total_days_visited+# WHERE user_id=#', $oldest_consec_diff, $last_diff, $userid); } else { qa_db_query_sub('UPDATE ^achievements SET last_visit=NOW(), total_days_visited=total_days_visited+# WHERE user_id=#', $last_diff, $userid); } $badges = array('dedicated', 'devoted', 'zealous'); qa_badge_award_check($badges, $user['lcv'], $userid, null, 2); } else { // 2+ days, reset consecutive days due to lapse qa_db_query_sub('UPDATE ^achievements SET last_visit=NOW(), oldest_consec_visit=NOW(), total_days_visited=total_days_visited+1 WHERE user_id=#', $userid); } $badges = array('visitor', 'trouper', 'veteran'); qa_badge_award_check($badges, $user['tdv'], $userid, null, 2); $badges = array('regular', 'old_timer', 'ancestor'); qa_badge_award_check($badges, $first_visit_diff, $userid, null, 2); // check points if (isset($user['points'])) { $badges = array('100_club', '1000_club', '10000_club'); qa_badge_award_check($badges, $user['points'], $userid, null, 2); } } }
function doctype() { $this->is_print_view = qa_opt('print_view') && qa_get('print') == 'true'; qa_html_theme_base::doctype(); }
function doctype() { qa_html_theme_base::doctype(); require_once QA_INCLUDE_DIR . 'qa-db-metas.php'; // Custom Meta(title,description,keywords) if ($this->template == 'question' and qa_opt('useo_meta_editor_enable')) { $metas = json_decode(qa_db_postmeta_get($this->content['q_view']['raw']['postid'], 'useo-meta-info'), true); $this->meta_title = @$metas['title']; $this->meta_description = @$metas['description']; $this->meta_keywords = @$metas['keywords']; } // Generate Social Meta Tags $page_url = @$this->content['canonical']; if (!empty($this->meta_description)) { $description = $this->meta_description; } else { $description = @$this->content['description']; } if (!empty($this->meta_title)) { $title = $this->meta_title; } else { $title = @$this->content['q_view']['raw']['title']; } if ($this->template == 'question') { if (qa_opt('useo_social_enable_editor')) { $this->social_metas = json_decode(qa_db_postmeta_get($this->content['q_view']['raw']['postid'], 'useo-social-info'), true); if (count($this->social_metas)) { foreach ($this->social_metas as $index => $variable) { $this->metas[$index]['content'] = $variable; $this->metas[$index]['type'] = ''; } } } if (qa_opt('useo_social_og_enable_auto')) { // Open Graph // site name $this->metas['og-sitename']['content'] = @$this->content['site_title']; $this->metas['og-sitename']['type'] = 'property="og:site_name"'; // title $this->metas['og-title']['content'] = $title; $this->metas['og-title']['type'] = 'property="og:title"'; // description $gl_length = qa_opt('useo_social_og_desc_length'); if ($gl_length <= 0) { $gl_length = 140; } $this->metas['og-description']['content'] = useo_get_excerpt($description, 0, $gl_length); $this->metas['og-description']['type'] = 'property="og:description"'; // Type $this->metas['og-type']['content'] = 'website'; $this->metas['og-type']['type'] = 'property="og:type"'; // url if (!empty($page_url)) { $this->metas['og-url']['content'] = $page_url; $this->metas['og-url']['type'] = 'property="og:url"'; } // image $og_image = qa_opt('useo_social_og_image'); if (!empty($og_image)) { $this->metas['og-image']['content'] = $og_image; $this->metas['og-image']['type'] = 'property="og:image"'; } } if (qa_opt('useo_social_tc_enable')) { // Twitter Cards // type $this->metas['tc-type']['content'] = 'summary'; $this->metas['tc-type']['type'] = 'property="twitter:card"'; // title $this->metas['tc-title']['content'] = $title; $this->metas['tc-title']['type'] = 'property="twitter:title"'; // description $useo_social_tc_desc_length = qa_opt('useo_social_og_desc_length'); if ($useo_social_tc_desc_length <= 0) { $useo_social_tc_desc_length = 120; } $this->metas['tc-description']['content'] = useo_get_excerpt($description, 0, $useo_social_tc_desc_length); $this->metas['tc-description']['type'] = 'property="twitter:description"'; // image $tc_image = qa_opt('useo_social_tc_image'); if (!empty($tc_image)) { $this->metas['tc-image']['content'] = $tc_image; $this->metas['tc-image']['type'] = 'property="twitter:image"'; } // handler // twitter handler goes into "site" field of meta tag $tc_handler = qa_opt('useo_social_tc_handler'); if (!empty($tc_handler)) { $this->metas['tc-handler']['content'] = $tc_handler; $this->metas['tc-handler']['type'] = 'property="twitter:site"'; } } if (qa_opt('useo_social_schema_enable')) { // Twitter Cards // title $this->metas['gp-title']['content'] = $title; $this->metas['gp-title']['type'] = 'itemprop="name"'; // description $this->metas['gp-title']['content'] = $description; $this->metas['gp-title']['type'] = 'itemprop="description"'; // type $gp_type = qa_opt('useo_social_schema_page_type'); if ($gp_type == 2) { $gp_page_type = 'Question'; } elseif ($gp_type == 3) { $gp_page_type = 'Article'; } if (isset($gp_page_type)) { $this->metas['gp-title']['content'] = ''; $this->metas['gp-title']['type'] = 'itemscope itemtype="http://schema.org/' . $gp_page_type . '"'; } // description $gp_image = qa_opt('useo_social_gp_thumbnail'); if (!empty($gp_image)) { $this->metas['gp-image']['content'] = $gp_image; $this->metas['gp-image']['type'] = 'itemprop="image"'; } } } // category link titles $useo_cat_desc_map = array(); $categoryid_list = array(); //prepare category navigation ids if (isset($this->content['navigation']['cat']) && qa_opt('useo_cat_title_nav_enable')) { $category_nav = $this->content['navigation']['cat']; unset($category_nav['all']); foreach ($category_nav as $index => $item) { $categoryid_list[$item['categoryid']] = $item['categoryid']; } } // prepare question list ids if (isset($this->content["q_list"]["qs"]) && qa_opt('useo_cat_title_qlist_enable')) { foreach ($this->content["q_list"]["qs"] as $index => $item) { if ($item['raw']['categoryid']) { $categoryid_list[$item['raw']['categoryid']] = $item['raw']['categoryid']; } } } // get all category titles if (count($categoryid_list)) { $result = qa_db_query_sub('SELECT categoryid, content FROM ^categorymetas WHERE categoryid IN ($) AND title=$', $categoryid_list, 'useo_cat_title'); $useo_cat_desc_map = qa_db_read_all_assoc($result, 'categoryid'); if (isset($this->content["q_list"]["qs"])) { foreach ($this->content["q_list"]["qs"] as $index => $item) { if (isset($item['raw']['categoryid']) && isset($useo_cat_desc_map[$item['raw']['categoryid']])) { $this->content["q_list"]["qs"][$index]['where']['title'] = $useo_cat_desc_map[$item['raw']['categoryid']]['content']; } } } } // set category title for navigation if (count(@$this->content['navigation']['cat']) && qa_opt('useo_cat_title_nav_enable')) { foreach ($this->content['navigation']['cat'] as $index => $item) { if (isset($item['categoryid']) && isset($useo_cat_desc_map[$item['categoryid']])) { $this->content['navigation']['cat'][$index]["popup"] = $useo_cat_desc_map[$item['categoryid']]['content']; } } } // Administrator panel navigation item if ($this->request == 'admin/ulitmate_seo') { if (empty($this->content['navigation']['sub'])) { $this->content['navigation']['sub'] = array(); } require_once QA_INCLUDE_DIR . 'qa-app-admin.php'; $admin_nav = qa_admin_sub_navigation(); $this->content['navigation']['sub'] = array_merge($admin_nav, $this->content['navigation']['sub']); } if ($this->template == 'admin' or $this->request == 'ulitmate_seo') { $this->content['navigation']['sub']['ulitmate_seo'] = array('label' => 'Ultimate SEO', 'url' => qa_path_html('admin/ulitmate_seo')); if ($this->request == 'admin/ulitmate_seo') { $this->content['navigation']['sub']['ulitmate_seo']['selected'] = true; } } }
function doctype() { if (!isset($_POST['ajax_bookmark_qid'])) { qa_html_theme_base::doctype(); } }
function doctype() { //qa_error_log($this->content); if ($this->request == 'admin/permissions' && function_exists('qa_register_plugin_phrases') && qa_get_logged_in_level() >= QA_USER_LEVEL_ADMIN) { $permits[] = 'expert_question_ask'; $permits[] = 'expert_question_roles'; foreach ($permits as $optionname) { $value = qa_opt($optionname); $optionfield = array('id' => $optionname, 'label' => qa_lang_html('expert_question/' . $optionname) . ':', 'tags' => 'NAME="option_' . $optionname . '" ID="option_' . $optionname . '"', 'error' => qa_html(@$errors[$optionname])); $widest = QA_PERMIT_USERS; $narrowest = QA_PERMIT_ADMINS; $permitoptions = qa_admin_permit_options($widest, $narrowest, !QA_FINAL_EXTERNAL_USERS && qa_opt('confirm_user_emails')); if (count($permitoptions) > 1) { qa_optionfield_make_select($optionfield, $permitoptions, $value, $value == QA_PERMIT_CONFIRMED ? QA_PERMIT_USERS : min(array_keys($permitoptions))); } $this->content['form']['fields'][$optionname] = $optionfield; $this->content['form']['fields'][$optionname . '_points'] = array('id' => $optionname . '_points', 'tags' => 'NAME="option_' . $optionname . '_points" ID="option_' . $optionname . '_points"', 'type' => 'number', 'value' => qa_opt($optionname . '_points'), 'prefix' => qa_lang_html('admin/users_must_have') . ' ', 'note' => qa_lang_html('admin/points')); $checkboxtodisplay[$optionname . '_points'] = '(option_' . $optionname . '==' . qa_js(QA_PERMIT_POINTS) . ') ||(option_' . $optionname . '==' . qa_js(QA_PERMIT_POINTS_CONFIRMED) . ')'; } qa_set_display_rules($this->content, $checkboxtodisplay); } $this->expert_user = $this->is_expert_user(); if (!$this->expert_user) { foreach ($this->content['navigation']['main'] as $key => $nav) { if ($nav['url'] == qa_path_html(qa_opt('expert_question_page_url'))) { unset($this->content['navigation']['main'][$key]); } } } if (qa_clicked('do_expert_answeradd') && ($this->expert_user || $this->content['q_view']['raw']['userid'] === qa_get_logged_in_userid())) { global $qa_login_userid, $questionid, $question, $answers, $question, $qa_request; $innotify = qa_post_text('notify') ? true : false; $inemail = qa_post_text('email'); qa_get_post_content('editor', 'content', $ineditor, $incontent, $informat, $intext); $isduplicate = false; foreach ($answers as $answer) { if (!$answer['hidden']) { if (implode(' ', qa_string_to_words($answer['content'])) == implode(' ', qa_string_to_words($incontent))) { $isduplicate = true; } } } if (!$isduplicate) { if (!isset($qa_login_userid)) { $qa_cookieid = qa_cookie_get_create(); } // create a new cookie if necessary $answerid = qa_answer_create($qa_login_userid, qa_get_logged_in_handle(), $qa_cookieid, $incontent, $informat, $intext, $innotify, $inemail, $question); qa_report_write_action($qa_login_userid, $qa_cookieid, 'a_post', $questionid, $answerid, null); qa_redirect($qa_request, null, null, null, qa_anchor('A', $answerid)); } else { $pageerror = qa_lang_html('question/duplicate_content'); } qa_page_q_load_q(); // reload since we may have changed something } if (qa_opt('expert_question_enable')) { if ($this->expert_user && qa_opt('expert_question_show_count')) { $this->expertcount = qa_db_read_one_value(qa_db_query_sub("SELECT COUNT(postid) FROM ^postmeta, ^posts WHERE ^postmeta.meta_key='is_expert_question' AND ^postmeta.post_id=^posts.postid AND ^posts.acount=0" . (is_array($this->expert_user) ? " AND ^posts.categoryid IN (#)" : " AND \$"), $this->expert_user), true); if ($this->expertcount) { foreach ($this->content['navigation']['main'] as $key => $nav) { if ($nav['url'] == qa_path_html(qa_opt('expert_question_page_url'))) { $this->content['navigation']['main'][$key]['label'] .= ' (' . $this->expertcount . ')'; } } } } global $qa_request; if ($qa_request == qa_opt('expert_question_page_url')) { $this->content['navigation']['sub'] = array('special' => 1); } if ($this->template == 'ask' && in_array(qa_opt('expert_question_type'), array(0, 2)) && !qa_user_permit_error('permit_post_q') && !qa_permit_value_error(qa_opt('expert_question_ask'), qa_get_logged_in_userid(), qa_get_logged_in_level(), qa_get_logged_in_flags()) && !qa_opt('site_maintenance')) { $this->content['form']['fields'][] = array('tags' => 'NAME="is_expert_question" ID="is_expert_question"', 'value' => qa_get(qa_opt('expert_question_page_url')) == 'true' ? qa_opt('expert_question_yes') : qa_opt('expert_question_no'), 'type' => 'select-radio', 'options' => array('no' => qa_opt('expert_question_no'), 'yes' => qa_opt('expert_question_yes'))); } if ($this->template == 'user' && qa_get_logged_in_handle() === $this->_user_handle()) { if (!isset($this->content['navigation']['sub'])) { $this->content['navigation']['sub'] = array('profile' => array('url' => qa_path_html('user/' . $this->_user_handle(), null, qa_opt('site_url')), 'label' => $this->_user_handle(), 'selected' => !qa_get('tab') ? true : false), qa_opt('expert_question_page_url') => array('url' => qa_path_html('user/' . $this->_user_handle(), array('tab' => qa_opt('expert_question_page_url')), qa_opt('site_url')), 'label' => qa_opt('expert_question_page_title'), 'selected' => qa_get('tab') == qa_opt('expert_question_page_url') ? true : false)); } else { $this->content['navigation']['sub'][qa_opt('expert_question_page_url')] = array('url' => qa_path_html('user/' . $this->_user_handle(), array('tab' => qa_opt('expert_question_page_url')), qa_opt('site_url')), 'label' => qa_opt('expert_question_page_title'), 'selected' => qa_get('tab') == qa_opt('expert_question_page_url') ? true : false); } } if ($this->template == 'question') { $qid = $this->content['q_view']['raw']['postid']; $expert = qa_db_read_one_value(qa_db_query_sub("SELECT meta_value FROM ^postmeta WHERE meta_key='is_expert_question' AND post_id=#", $qid), true); if ($expert) { // is expert question $this->expert_question = 1; // modify post elements // title $this->content['title'] .= ' ' . qa_opt('expert_question_title'); // css class $this->content['q_view']['tags'] .= ' class="qa-expert-question"'; // remove hidden stuff unset($this->content['q_view']['hidden']); unset($this->content['hidden']); } } } qa_html_theme_base::doctype(); }
function doctype() { qa_html_theme_base::doctype(); //qa_error_log($this->content); if (qa_post_text('poll_vote')) { return; } if ($this->request == 'admin/permissions' && function_exists('qa_register_plugin_phrases') && qa_get_logged_in_level() >= QA_USER_LEVEL_ADMIN) { $permits[] = 'permit_vote_poll'; $permits[] = 'permit_post_poll'; $permits[] = 'permit_close_poll'; $permits[] = 'permit_delete_poll'; foreach ($permits as $optionname) { $value = qa_opt($optionname); $optionfield = array('id' => $optionname, 'label' => qa_lang_html('polls/' . $optionname) . ':', 'tags' => 'NAME="option_' . $optionname . '" ID="option_' . $optionname . '"', 'error' => qa_html(@$errors[$optionname])); $widest = QA_PERMIT_USERS; $narrowest = QA_PERMIT_ADMINS; $permitoptions = qa_admin_permit_options($widest, $narrowest, !QA_FINAL_EXTERNAL_USERS && qa_opt('confirm_user_emails')); if (count($permitoptions) > 1) { qa_optionfield_make_select($optionfield, $permitoptions, $value, $value == QA_PERMIT_CONFIRMED ? QA_PERMIT_USERS : min(array_keys($permitoptions))); } $this->content['form']['fields'][$optionname] = $optionfield; $this->content['form']['fields'][$optionname . '_points'] = array('id' => $optionname . '_points', 'tags' => 'NAME="option_' . $optionname . '_points" ID="option_' . $optionname . '_points"', 'type' => 'number', 'value' => qa_opt($optionname . '_points'), 'prefix' => qa_lang_html('admin/users_must_have') . ' ', 'note' => qa_lang_html('admin/points')); $checkboxtodisplay[$optionname . '_points'] = '(option_' . $optionname . '==' . qa_js(QA_PERMIT_POINTS) . ') ||(option_' . $optionname . '==' . qa_js(QA_PERMIT_POINTS_CONFIRMED) . ')'; } qa_set_display_rules($this->content, $checkboxtodisplay); } if (qa_opt('poll_enable')) { global $qa_request; if ($qa_request == 'polls') { $this->content['navigation']['sub'] = array('special' => 1); } else { if ($this->template == 'ask' && !qa_user_permit_error('permit_post_q') && !qa_opt('site_maintenance') && qa_permit_check('permit_post_poll')) { $this->content['form']['tags'] .= ' onSubmit="pollSubmit(event)"'; $this->content['form']['fields'][] = array('label' => qa_lang('polls/checkbox_text'), 'tags' => 'NAME="is_poll" ID="is_poll" onclick="jQuery(\'#qa-poll-ask-div\').toggle()"', 'type' => 'checkbox'); $this->content['form']['fields'][] = array('note' => '<div id="qa-poll-ask-div" style="display:none"><p class="qa-form-tall-label"><input type="checkbox" name="poll_multiple">' . qa_lang('polls/multiple_text') . '</p><p class="qa-form-tall-label">' . qa_lang('polls/answers_text') . '</p><input type="input" class="qa-poll-answer-text" class="qa-poll-answer-text" name="poll_answer_1" id="poll_answer_1"> <input type="button" class="qa-poll-answer-add" value="+" onclick="addPollAnswer(poll_answer_index)"></div>', 'type' => 'static'); } } $poll = array(); //Find all polls only for non blog pages if (strpos($this->template, 'blog') !== 0) { $poll_array = qa_db_read_all_assoc(qa_db_query_sub('SELECT * FROM ^postmeta WHERE meta_key=$', 'is_poll')); foreach ($poll_array as $q) { $poll[(int) $q['post_id']] = $q['meta_value']; } } if ($this->template == 'question') { if (isset($this->content['q_view'])) { $qid = $this->content['q_view']['raw']['postid']; $author = $this->content['q_view']['raw']['userid']; if (isset($poll[$qid])) { // is a poll $this->poll = $poll[$qid]; if (qa_post_text('poll_delete') && (!qa_user_permit_error('permit_delete_poll') || qa_get_logged_in_userid() == $author)) { $this->deletePoll($qid); $this->content['error'] = 'Poll deleted.'; return; } else { if (qa_post_text('poll_close') && (!qa_user_permit_error('permit_close_poll') || qa_get_logged_in_userid() == $author)) { $this->closePoll($qid); } else { if (qa_post_text('poll_reopen') && (!qa_user_permit_error('permit_close_poll') || qa_get_logged_in_userid() == $author)) { $this->reopenPoll($qid); } } } // add post elements // title $this->content['title'] .= ' ' . qa_lang('polls/question_title'); // poll div $this->content['q_view']['content'] = @$this->content['q_view']['content'] . '<div id="qa-poll-div">' . $this->getPollDiv($qid, qa_get_logged_in_userid()) . '</div>'; // css class $this->content['q_view']['main_form_tags'] = @$this->content['q_view']['main_form_tags'] . ' class="qa-poll"'; } } } //Mark the questions only as polls , discard the blog pages if (isset($this->content['q_list']) && strpos($this->template, 'blog') !== 0) { foreach ($this->content['q_list']['qs'] as $idx => $question) { if (isset($poll[$question['raw']['postid']])) { $this->content['q_list']['qs'][$idx]['title'] .= ' ' . qa_lang('polls/question_title'); } } } } }
function doctype() { qa_html_theme_base::doctype(); if (qa_get_logged_in_level() >= QA_USER_LEVEL_ADMIN) { // theme installation & update $version = qa_opt('IT_VERSION'); if (IT_VERSION > $version) { qa_redirect('it_installation'); } // admin/category form fields if ($this->request == 'admin/categories' && qa_get('edit') >= 1) { require_once QA_INCLUDE_DIR . 'qa-db-metas.php'; $categoryid = qa_get('edit'); $et_category = json_decode(qa_db_categorymeta_get($categoryid, 'et_category'), true); $et_category_link_title = $et_category['et_cat_title']; $et_category_description = $et_category['et_cat_desc']; $et_category_icon_48 = $et_category['et_cat_icon48']; $et_category_icon_64 = $et_category['et_cat_icon64']; $this->content['form']['fields'][] = array('tags' => 'NAME="et_category_link_title" ID="et_category_link_title"', 'label' => 'Category Link Title', 'value' => $et_category_link_title); $this->content['form']['fields'][] = array('tags' => 'NAME="et_category_description" ID="et_category_description"', 'label' => 'Category Sidebar Description', 'value' => $et_category_description); $this->content['form']['fields'][] = array('tags' => 'NAME="et_category_icon_48" ID="et_category_icon_48"', 'label' => 'Category Icon(48 pixel)', 'value' => $et_category_icon_48); $this->content['form']['fields'][] = array('tags' => 'NAME="et_category_icon_64" ID="et_category_icon_64"', 'label' => 'Category Icon(64 pixel)', 'value' => $et_category_icon_64); } } // ask form if ($this->template == 'ask' or $this->template == 'question' && substr(qa_get_state(), 0, 4) == 'edit') { // Form template if ($this->template == 'ask') { $form_name = 'form'; } else { $form_name = 'form_q_edit'; } // Featured Image if (qa_opt('it_feature_img_enable')) { $featured_image = ''; $featured_image_url = ''; $featured_image_style = ''; $featured_file_container_style = ''; if ($this->template != 'ask') { $postid = $this->content["q_view"]["raw"]["postid"]; require_once QA_INCLUDE_DIR . 'qa-db-metas.php'; $featured_image = qa_db_postmeta_get($postid, 'et_featured_image'); if (isset($featured_image)) { $featured_image_url = qa_opt('it_featured_url_abs') . 'featured/' . $featured_image; $featured_image_style = 'display: inline-block;'; $featured_file_container_style = 'display:none;'; } } $custom_field[0]['category_featured_upload']['label'] = ''; $custom_field[0]['category_featured_upload']['html'] = ' <div style="' . $featured_image_style . '" class="image-preview-container" id="image-preview-container"> <img class="image-preview img-thumbnail" id="image-preview" src="' . $featured_image_url . '"> <button class="btn btn-danger remove-featured-image" id="remove-featured-image" type="button">X</button> </div> <div id="featured_file_container" style="' . $featured_file_container_style . '"><div id="featured_file_upload"></div></div> <input type="hidden" value="' . $featured_image . '" name="featured_image" id="featured_image"> '; $custom_field[0]['category_featured_upload']['type'] = 'custom'; $count = count($this->content[$form_name]["fields"]); $featured_pos = 0; $this->content[$form_name]["fields"] = array_merge(array_slice($this->content[$form_name]["fields"], 0, $featured_pos), $custom_field[0], array_slice($this->content[$form_name]["fields"], $featured_pos, $count)); //v($custom_field); } else { $custom_field = array(); } // Excerpt Field if (qa_opt('it_excerpt_field_enable')) { if ($this->template == 'ask') { $excerpt_pos = (int) qa_opt('it_excerpt_pos_ask'); $excerit_text = ''; } else { $postid = $this->content["q_view"]["raw"]["postid"]; require_once QA_INCLUDE_DIR . 'qa-db-metas.php'; $excerpt_pos = (int) qa_opt('it_excerpt_pos_edit'); $excerit_text = qa_db_postmeta_get($postid, 'et_excerpt_text'); } } // Category Field if (qa_opt('it_cat_advanced_enable')) { if ($this->template == 'ask') { $category_pos = (int) qa_opt('it_cat_pos_ask'); //$field_value = qa_post_text('q_category'); } else { $category_pos = (int) qa_opt('it_cat_pos_edit'); } if (empty($this->content["q_view"]["raw"]["categoryid"])) { $this->content[$form_name]['fields']['category']['value'] = ''; } $this->content[$form_name]['fields']['category']['type'] = 'text'; $this->content[$form_name]['fields']['category']['label'] = ''; $this->content[$form_name]['fields']['category']['tags'] = 'name="q_category" id="category_tag" autocomplete="off" onkeyup="qa_cat_tag_hints();" onmouseup="qa_cat_tag_hints();"'; $this->content[$form_name]['fields']['category']['note_force'] = true; $custom_field[1]['category_tag_holder']['label'] = 'This tip is about:'; $custom_field[1]['category_tag_holder']['html'] = '<div id="category_tag_holder"></div>'; $custom_field[1]['category_tag_holder']['type'] = 'custom'; } else { $custom_field[1] = array(); $category_pos = 0; } // order of form elements $count = count($this->content[$form_name]["fields"]); $this->content[$form_name]["fields"] = array_merge(array_slice($this->content[$form_name]["fields"], 0, $category_pos), $custom_field[1], array_slice($this->content[$form_name]["fields"], $category_pos, $count)); // Excerpt Custom Fields if (qa_opt('it_excerpt_field_enable')) { $custom_field = array(); $custom_field[0]['excerpt']['label'] = 'Add Excerpt'; $custom_field[0]['excerpt']['html'] = ' <textarea name="q-excerpt" id="excerpt-input-placeholder" class="qa-form-tall-text" cols="40" rows="3" name="excerpt-input-placeholder" placeholder="If you add an excerpt it will be used in lists">' . $excerit_text . '</textarea> '; $custom_field[0]['excerpt']['type'] = 'custom'; $count = count($this->content[$form_name]["fields"]); $this->content[$form_name]["fields"] = array_merge(array_slice($this->content[$form_name]["fields"], 0, $excerpt_pos), $custom_field[0], array_slice($this->content[$form_name]["fields"], $excerpt_pos, $count)); } } }
function doctype() { // Setup Navigation global $qa_request; $this->content['navigation']['user']['themeoptions'] = array('label' => 'Theme Options', 'url' => qa_path_html('themeoptions'), 'icon' => 'icon-wrench'); if ($qa_request == 'themeoptions') { $this->content['navigation']['user']['themeoptions']['selected'] = true; $this->content['navigation']['user']['selected'] = true; $this->template = "themeoptions"; $this->content['site_title'] = "Theme Options"; $this->content['error'] = ""; $this->content['suggest_next'] = ""; $this->content['title'] = "Theme Options"; //$this->content['custom']=''; global $google_webfonts; global $normal_fonts; $google_webfonts = json_decode('{"ABeeZee":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"}],"subsets":[{"id":"latin","name":"Latin"}]},"Abel":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Abril Fatface":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Aclonica":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Acme":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Actor":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Adamina":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Advent Pro":{"variants":[{"id":"100","name":"Ultra-Light 100"},{"id":"200","name":"Light 200"},{"id":"300","name":"Book 300"},{"id":"400","name":"Normal 400"},{"id":"500","name":"Medium 500"},{"id":"600","name":"Semi-Bold 600"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"greek","name":"Greek"},{"id":"latin-ext","name":"Latin Extended"}]},"Aguafina Script":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Akronim":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Aladin":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Aldrich":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Alef":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"}]},"Alegreya":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"900","name":"Ultra-Bold 900"},{"id":"900italic","name":"Ultra-Bold 900 Italic"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Alegreya SC":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"900","name":"Ultra-Bold 900"},{"id":"900italic","name":"Ultra-Bold 900 Italic"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Alegreya Sans":{"variants":[{"id":"100","name":"Ultra-Light 100"},{"id":"300","name":"Book 300"},{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"500","name":"Medium 500"},{"id":"700","name":"Bold 700"},{"id":"800","name":"Extra-Bold 800"},{"id":"900","name":"Ultra-Bold 900"},{"id":"900italic","name":"Ultra-Bold 900 Italic"}],"subsets":[{"id":"vietnamese","name":"Vietnamese"},{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Alegreya Sans SC":{"variants":[{"id":"100","name":"Ultra-Light 100"},{"id":"300","name":"Book 300"},{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"500","name":"Medium 500"},{"id":"700","name":"Bold 700"},{"id":"800","name":"Extra-Bold 800"},{"id":"900","name":"Ultra-Bold 900"},{"id":"900italic","name":"Ultra-Bold 900 Italic"}],"subsets":[{"id":"vietnamese","name":"Vietnamese"},{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Alex Brush":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Alfa Slab One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Alice":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Alike":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Alike Angular":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Allan":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Allerta":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Allerta Stencil":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Allura":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Almendra":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Almendra Display":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Almendra SC":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Amarante":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Amaranth":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"latin","name":"Latin"}]},"Amatic SC":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"}]},"Amethysta":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Anaheim":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Andada":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Andika":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"cyrillic-ext","name":"Cyrillic Extended"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Angkor":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"khmer","name":"Khmer"}]},"Annie Use Your Telescope":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Anonymous Pro":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"greek-ext","name":"Greek Extended"},{"id":"latin","name":"Latin"},{"id":"cyrillic-ext","name":"Cyrillic Extended"},{"id":"greek","name":"Greek"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Antic":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Antic Didone":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Antic Slab":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Anton":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Arapey":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"}],"subsets":[{"id":"latin","name":"Latin"}]},"Arbutus":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Arbutus Slab":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Architects Daughter":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Archivo Black":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Archivo Narrow":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Arimo":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"vietnamese","name":"Vietnamese"},{"id":"greek-ext","name":"Greek Extended"},{"id":"latin","name":"Latin"},{"id":"cyrillic-ext","name":"Cyrillic Extended"},{"id":"greek","name":"Greek"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Arizonia":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Armata":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Artifika":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Arvo":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"latin","name":"Latin"}]},"Asap":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Asset":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Astloch":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"}]},"Asul":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"}]},"Atomic Age":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Aubrey":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Audiowide":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Autour One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Average":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Average Sans":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Averia Gruesa Libre":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Averia Libre":{"variants":[{"id":"300","name":"Book 300"},{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"latin","name":"Latin"}]},"Averia Sans Libre":{"variants":[{"id":"300","name":"Book 300"},{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"latin","name":"Latin"}]},"Averia Serif Libre":{"variants":[{"id":"300","name":"Book 300"},{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"latin","name":"Latin"}]},"Bad Script":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"cyrillic","name":"Cyrillic"}]},"Balthazar":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Bangers":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Basic":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Battambang":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"khmer","name":"Khmer"}]},"Baumans":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Bayon":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"khmer","name":"Khmer"}]},"Belgrano":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Belleza":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"BenchNine":{"variants":[{"id":"300","name":"Book 300"},{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Bentham":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Berkshire Swash":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Bevan":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Bigelow Rules":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Bigshot One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Bilbo":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Bilbo Swash Caps":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Bitter":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Black Ops One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Bokor":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"khmer","name":"Khmer"}]},"Bonbon":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Boogaloo":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Bowlby One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Bowlby One SC":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Brawler":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Bree Serif":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Bubblegum Sans":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Bubbler One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Buda":{"variants":[{"id":"300","name":"Book 300"}],"subsets":[{"id":"latin","name":"Latin"}]},"Buenard":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Butcherman":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Butterfly Kids":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Cabin":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"500","name":"Medium 500"},{"id":"600","name":"Semi-Bold 600"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"latin","name":"Latin"}]},"Cabin Condensed":{"variants":[{"id":"400","name":"Normal 400"},{"id":"500","name":"Medium 500"},{"id":"600","name":"Semi-Bold 600"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"}]},"Cabin Sketch":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"}]},"Caesar Dressing":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Cagliostro":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Calligraffitti":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Cambo":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Candal":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Cantarell":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"latin","name":"Latin"}]},"Cantata One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Cantora One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Capriola":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Cardo":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"greek-ext","name":"Greek Extended"},{"id":"latin","name":"Latin"},{"id":"greek","name":"Greek"},{"id":"latin-ext","name":"Latin Extended"}]},"Carme":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Carrois Gothic":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Carrois Gothic SC":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Carter One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Caudex":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"greek-ext","name":"Greek Extended"},{"id":"latin","name":"Latin"},{"id":"greek","name":"Greek"},{"id":"latin-ext","name":"Latin Extended"}]},"Cedarville Cursive":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Ceviche One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Changa One":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"}],"subsets":[{"id":"latin","name":"Latin"}]},"Chango":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Chau Philomene One":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Chela One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Chelsea Market":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Chenla":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"khmer","name":"Khmer"}]},"Cherry Cream Soda":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Cherry Swash":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Chewy":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Chicle":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Chivo":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"900","name":"Ultra-Bold 900"},{"id":"900italic","name":"Ultra-Bold 900 Italic"}],"subsets":[{"id":"latin","name":"Latin"}]},"Cinzel":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"},{"id":"900","name":"Ultra-Bold 900"}],"subsets":[{"id":"latin","name":"Latin"}]},"Cinzel Decorative":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"},{"id":"900","name":"Ultra-Bold 900"}],"subsets":[{"id":"latin","name":"Latin"}]},"Clicker Script":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Coda":{"variants":[{"id":"400","name":"Normal 400"},{"id":"800","name":"Extra-Bold 800"}],"subsets":[{"id":"latin","name":"Latin"}]},"Coda Caption":{"variants":[{"id":"800","name":"Extra-Bold 800"}],"subsets":[{"id":"latin","name":"Latin"}]},"Codystar":{"variants":[{"id":"300","name":"Book 300"},{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Combo":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Comfortaa":{"variants":[{"id":"300","name":"Book 300"},{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"cyrillic-ext","name":"Cyrillic Extended"},{"id":"greek","name":"Greek"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Coming Soon":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Concert One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Condiment":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Content":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"khmer","name":"Khmer"}]},"Contrail One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Convergence":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Cookie":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Copse":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Corben":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"}]},"Courgette":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Cousine":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"vietnamese","name":"Vietnamese"},{"id":"greek-ext","name":"Greek Extended"},{"id":"latin","name":"Latin"},{"id":"cyrillic-ext","name":"Cyrillic Extended"},{"id":"greek","name":"Greek"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Coustard":{"variants":[{"id":"400","name":"Normal 400"},{"id":"900","name":"Ultra-Bold 900"}],"subsets":[{"id":"latin","name":"Latin"}]},"Covered By Your Grace":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Crafty Girls":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Creepster":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Crete Round":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Crimson Text":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"600","name":"Semi-Bold 600"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"latin","name":"Latin"}]},"Croissant One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Crushed":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Cuprum":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Cutive":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Cutive Mono":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Damion":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Dancing Script":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"}]},"Dangrek":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"khmer","name":"Khmer"}]},"Dawning of a New Day":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Days One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Delius":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Delius Swash Caps":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Delius Unicase":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"}]},"Della Respira":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Denk One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Devonshire":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Didact Gothic":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"greek-ext","name":"Greek Extended"},{"id":"latin","name":"Latin"},{"id":"cyrillic-ext","name":"Cyrillic Extended"},{"id":"greek","name":"Greek"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Diplomata":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Diplomata SC":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Domine":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Donegal One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Doppio One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Dorsa":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Dosis":{"variants":[{"id":"200","name":"Light 200"},{"id":"300","name":"Book 300"},{"id":"400","name":"Normal 400"},{"id":"500","name":"Medium 500"},{"id":"600","name":"Semi-Bold 600"},{"id":"700","name":"Bold 700"},{"id":"800","name":"Extra-Bold 800"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Dr Sugiyama":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Droid Sans":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"}]},"Droid Sans Mono":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Droid Serif":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"latin","name":"Latin"}]},"Duru Sans":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Dynalight":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"EB Garamond":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"vietnamese","name":"Vietnamese"},{"id":"latin","name":"Latin"},{"id":"cyrillic-ext","name":"Cyrillic Extended"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Eagle Lake":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Eater":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Economica":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Electrolize":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Elsie":{"variants":[{"id":"400","name":"Normal 400"},{"id":"900","name":"Ultra-Bold 900"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Elsie Swash Caps":{"variants":[{"id":"400","name":"Normal 400"},{"id":"900","name":"Ultra-Bold 900"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Emblema One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Emilys Candy":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Engagement":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Englebert":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Enriqueta":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Erica One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Esteban":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Euphoria Script":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Ewert":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Exo":{"variants":[{"id":"100","name":"Ultra-Light 100"},{"id":"200","name":"Light 200"},{"id":"300","name":"Book 300"},{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"500","name":"Medium 500"},{"id":"600","name":"Semi-Bold 600"},{"id":"700","name":"Bold 700"},{"id":"800","name":"Extra-Bold 800"},{"id":"900","name":"Ultra-Bold 900"},{"id":"900italic","name":"Ultra-Bold 900 Italic"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Exo 2":{"variants":[{"id":"100","name":"Ultra-Light 100"},{"id":"200","name":"Light 200"},{"id":"300","name":"Book 300"},{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"500","name":"Medium 500"},{"id":"600","name":"Semi-Bold 600"},{"id":"700","name":"Bold 700"},{"id":"800","name":"Extra-Bold 800"},{"id":"900","name":"Ultra-Bold 900"},{"id":"900italic","name":"Ultra-Bold 900 Italic"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Expletus Sans":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"500","name":"Medium 500"},{"id":"600","name":"Semi-Bold 600"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"latin","name":"Latin"}]},"Fanwood Text":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"}],"subsets":[{"id":"latin","name":"Latin"}]},"Fascinate":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Fascinate Inline":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Faster One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Fasthand":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"khmer","name":"Khmer"}]},"Fauna One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Federant":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Federo":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Felipa":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Fenix":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Finger Paint":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Fjalla One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Fjord One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Flamenco":{"variants":[{"id":"300","name":"Book 300"},{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Flavors":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Fondamento":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Fontdiner Swanky":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Forum":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"cyrillic-ext","name":"Cyrillic Extended"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Francois One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Freckle Face":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Fredericka the Great":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Fredoka One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Freehand":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"khmer","name":"Khmer"}]},"Fresca":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Frijole":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Fruktur":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Fugaz One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"GFS Didot":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"greek","name":"Greek"}]},"GFS Neohellenic":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"greek","name":"Greek"}]},"Gabriela":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Gafata":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Galdeano":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Galindo":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Gentium Basic":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Gentium Book Basic":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Geo":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"}],"subsets":[{"id":"latin","name":"Latin"}]},"Geostar":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Geostar Fill":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Germania One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Gilda Display":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Give You Glory":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Glass Antiqua":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Glegoo":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Gloria Hallelujah":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Goblin One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Gochi Hand":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Gorditas":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"}]},"Goudy Bookletter 1911":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Graduate":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Grand Hotel":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Gravitas One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Great Vibes":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Griffy":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Gruppo":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Gudea":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Habibi":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Hammersmith One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Hanalei":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Hanalei Fill":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Handlee":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Hanuman":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"khmer","name":"Khmer"}]},"Happy Monkey":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Headland One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Henny Penny":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Herr Von Muellerhoff":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Holtwood One SC":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Homemade Apple":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Homenaje":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"IM Fell DW Pica":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"}],"subsets":[{"id":"latin","name":"Latin"}]},"IM Fell DW Pica SC":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"IM Fell Double Pica":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"}],"subsets":[{"id":"latin","name":"Latin"}]},"IM Fell Double Pica SC":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"IM Fell English":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"}],"subsets":[{"id":"latin","name":"Latin"}]},"IM Fell English SC":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"IM Fell French Canon":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"}],"subsets":[{"id":"latin","name":"Latin"}]},"IM Fell French Canon SC":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"IM Fell Great Primer":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"}],"subsets":[{"id":"latin","name":"Latin"}]},"IM Fell Great Primer SC":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Iceberg":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Iceland":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Imprima":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Inconsolata":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Inder":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Indie Flower":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Inika":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Irish Grover":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Istok Web":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"cyrillic-ext","name":"Cyrillic Extended"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Italiana":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Italianno":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Jacques Francois":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Jacques Francois Shadow":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Jim Nightshade":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Jockey One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Jolly Lodger":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Josefin Sans":{"variants":[{"id":"100","name":"Ultra-Light 100"},{"id":"300","name":"Book 300"},{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"600","name":"Semi-Bold 600"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"latin","name":"Latin"}]},"Josefin Slab":{"variants":[{"id":"100","name":"Ultra-Light 100"},{"id":"300","name":"Book 300"},{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"600","name":"Semi-Bold 600"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"latin","name":"Latin"}]},"Joti One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Judson":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"}]},"Julee":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Julius Sans One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Junge":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Jura":{"variants":[{"id":"300","name":"Book 300"},{"id":"400","name":"Normal 400"},{"id":"500","name":"Medium 500"},{"id":"600","name":"Semi-Bold 600"}],"subsets":[{"id":"greek-ext","name":"Greek Extended"},{"id":"latin","name":"Latin"},{"id":"cyrillic-ext","name":"Cyrillic Extended"},{"id":"greek","name":"Greek"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Just Another Hand":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Just Me Again Down Here":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Kameron":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"}]},"Kantumruy":{"variants":[{"id":"300","name":"Book 300"},{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"khmer","name":"Khmer"}]},"Karla":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Kaushan Script":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Kavoon":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Kdam Thmor":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"khmer","name":"Khmer"}]},"Keania One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Kelly Slab":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Kenia":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Khmer":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"khmer","name":"Khmer"}]},"Kite One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Knewave":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Kotta One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Koulen":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"khmer","name":"Khmer"}]},"Kranky":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Kreon":{"variants":[{"id":"300","name":"Book 300"},{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"}]},"Kristi":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Krona One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"La Belle Aurore":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Lancelot":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Lato":{"variants":[{"id":"100","name":"Ultra-Light 100"},{"id":"300","name":"Book 300"},{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"900","name":"Ultra-Bold 900"},{"id":"900italic","name":"Ultra-Bold 900 Italic"}],"subsets":[{"id":"latin","name":"Latin"}]},"League Script":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Leckerli One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Ledger":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Lekton":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Lemon":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Libre Baskerville":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Life Savers":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Lilita One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Lily Script One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Limelight":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Linden Hill":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"}],"subsets":[{"id":"latin","name":"Latin"}]},"Lobster":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"cyrillic-ext","name":"Cyrillic Extended"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Lobster Two":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"latin","name":"Latin"}]},"Londrina Outline":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Londrina Shadow":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Londrina Sketch":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Londrina Solid":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Lora":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Love Ya Like A Sister":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Loved by the King":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Lovers Quarrel":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Luckiest Guy":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Lusitana":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"}]},"Lustria":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Macondo":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Macondo Swash Caps":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Magra":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Maiden Orange":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Mako":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Marcellus":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Marcellus SC":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Marck Script":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Margarine":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Marko One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Marmelad":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Marvel":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"latin","name":"Latin"}]},"Mate":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"}],"subsets":[{"id":"latin","name":"Latin"}]},"Mate SC":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Maven Pro":{"variants":[{"id":"400","name":"Normal 400"},{"id":"500","name":"Medium 500"},{"id":"700","name":"Bold 700"},{"id":"900","name":"Ultra-Bold 900"}],"subsets":[{"id":"latin","name":"Latin"}]},"McLaren":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Meddon":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"MedievalSharp":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Medula One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Megrim":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Meie Script":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Merienda":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Merienda One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Merriweather":{"variants":[{"id":"300","name":"Book 300"},{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"900","name":"Ultra-Bold 900"},{"id":"900italic","name":"Ultra-Bold 900 Italic"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Merriweather Sans":{"variants":[{"id":"300","name":"Book 300"},{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"800","name":"Extra-Bold 800"},{"id":"800italic","name":"Extra-Bold 800 Italic"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Metal":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"khmer","name":"Khmer"}]},"Metal Mania":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Metamorphous":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Metrophobic":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Michroma":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Milonga":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Miltonian":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Miltonian Tattoo":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Miniver":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Miss Fajardose":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Modern Antiqua":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Molengo":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Molle":{"variants":[{"id":"italic","name":"Italic"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Monda":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Monofett":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Monoton":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Monsieur La Doulaise":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Montaga":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Montez":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Montserrat":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"}]},"Montserrat Alternates":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"}]},"Montserrat Subrayada":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"}]},"Moul":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"khmer","name":"Khmer"}]},"Moulpali":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"khmer","name":"Khmer"}]},"Mountains of Christmas":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"}]},"Mouse Memoirs":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Mr Bedfort":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Mr Dafoe":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Mr De Haviland":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Mrs Saint Delafield":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Mrs Sheppards":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Muli":{"variants":[{"id":"300","name":"Book 300"},{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"300italic","name":"Book 300 Italic"}],"subsets":[{"id":"latin","name":"Latin"}]},"Mystery Quest":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Neucha":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"cyrillic","name":"Cyrillic"}]},"Neuton":{"variants":[{"id":"200","name":"Light 200"},{"id":"300","name":"Book 300"},{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"800","name":"Extra-Bold 800"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"New Rocker":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"News Cycle":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Niconne":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Nixie One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Nobile":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"latin","name":"Latin"}]},"Nokora":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"khmer","name":"Khmer"}]},"Norican":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Nosifer":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Nothing You Could Do":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Noticia Text":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"vietnamese","name":"Vietnamese"},{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Noto Sans":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"vietnamese","name":"Vietnamese"},{"id":"greek-ext","name":"Greek Extended"},{"id":"latin","name":"Latin"},{"id":"cyrillic-ext","name":"Cyrillic Extended"},{"id":"greek","name":"Greek"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Noto Serif":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"vietnamese","name":"Vietnamese"},{"id":"greek-ext","name":"Greek Extended"},{"id":"latin","name":"Latin"},{"id":"cyrillic-ext","name":"Cyrillic Extended"},{"id":"greek","name":"Greek"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Nova Cut":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Nova Flat":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Nova Mono":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"greek","name":"Greek"}]},"Nova Oval":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Nova Round":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Nova Script":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Nova Slim":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Nova Square":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Numans":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Nunito":{"variants":[{"id":"300","name":"Book 300"},{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"}]},"Odor Mean Chey":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"khmer","name":"Khmer"}]},"Offside":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Old Standard TT":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"}]},"Oldenburg":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Oleo Script":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Oleo Script Swash Caps":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Open Sans":{"variants":[{"id":"300","name":"Book 300"},{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"600","name":"Semi-Bold 600"},{"id":"700","name":"Bold 700"},{"id":"800","name":"Extra-Bold 800"},{"id":"800italic","name":"Extra-Bold 800 Italic"}],"subsets":[{"id":"vietnamese","name":"Vietnamese"},{"id":"greek-ext","name":"Greek Extended"},{"id":"latin","name":"Latin"},{"id":"cyrillic-ext","name":"Cyrillic Extended"},{"id":"greek","name":"Greek"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Open Sans Condensed":{"variants":[{"id":"300","name":"Book 300"},{"id":"700","name":"Bold 700"},{"id":"300italic","name":"Book 300 Italic"}],"subsets":[{"id":"vietnamese","name":"Vietnamese"},{"id":"greek-ext","name":"Greek Extended"},{"id":"latin","name":"Latin"},{"id":"cyrillic-ext","name":"Cyrillic Extended"},{"id":"greek","name":"Greek"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Oranienbaum":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"cyrillic-ext","name":"Cyrillic Extended"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Orbitron":{"variants":[{"id":"400","name":"Normal 400"},{"id":"500","name":"Medium 500"},{"id":"700","name":"Bold 700"},{"id":"900","name":"Ultra-Bold 900"}],"subsets":[{"id":"latin","name":"Latin"}]},"Oregano":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Orienta":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Original Surfer":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Oswald":{"variants":[{"id":"300","name":"Book 300"},{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Over the Rainbow":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Overlock":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"900","name":"Ultra-Bold 900"},{"id":"900italic","name":"Ultra-Bold 900 Italic"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Overlock SC":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Ovo":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Oxygen":{"variants":[{"id":"300","name":"Book 300"},{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Oxygen Mono":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"PT Mono":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"cyrillic-ext","name":"Cyrillic Extended"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"PT Sans":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"cyrillic-ext","name":"Cyrillic Extended"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"PT Sans Caption":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"cyrillic-ext","name":"Cyrillic Extended"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"PT Sans Narrow":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"cyrillic-ext","name":"Cyrillic Extended"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"PT Serif":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"cyrillic-ext","name":"Cyrillic Extended"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"PT Serif Caption":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"cyrillic-ext","name":"Cyrillic Extended"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Pacifico":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Paprika":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Parisienne":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Passero One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Passion One":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"},{"id":"900","name":"Ultra-Bold 900"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Pathway Gothic One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Patrick Hand":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"vietnamese","name":"Vietnamese"},{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Patrick Hand SC":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"vietnamese","name":"Vietnamese"},{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Patua One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Paytone One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Peralta":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Permanent Marker":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Petit Formal Script":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Petrona":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Philosopher":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"cyrillic","name":"Cyrillic"}]},"Piedra":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Pinyon Script":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Pirata One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Plaster":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Play":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"greek-ext","name":"Greek Extended"},{"id":"latin","name":"Latin"},{"id":"cyrillic-ext","name":"Cyrillic Extended"},{"id":"greek","name":"Greek"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Playball":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Playfair Display":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"900","name":"Ultra-Bold 900"},{"id":"900italic","name":"Ultra-Bold 900 Italic"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Playfair Display SC":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"900","name":"Ultra-Bold 900"},{"id":"900italic","name":"Ultra-Bold 900 Italic"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Podkova":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"}]},"Poiret One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Poller One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Poly":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"}],"subsets":[{"id":"latin","name":"Latin"}]},"Pompiere":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Pontano Sans":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Port Lligat Sans":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Port Lligat Slab":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Prata":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Preahvihear":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"khmer","name":"Khmer"}]},"Press Start 2P":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"greek","name":"Greek"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Princess Sofia":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Prociono":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Prosto One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Puritan":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"latin","name":"Latin"}]},"Purple Purse":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Quando":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Quantico":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"latin","name":"Latin"}]},"Quattrocento":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Quattrocento Sans":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Questrial":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Quicksand":{"variants":[{"id":"300","name":"Book 300"},{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"}]},"Quintessential":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Qwigley":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Racing Sans One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Radley":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Raleway":{"variants":[{"id":"100","name":"Ultra-Light 100"},{"id":"200","name":"Light 200"},{"id":"300","name":"Book 300"},{"id":"400","name":"Normal 400"},{"id":"500","name":"Medium 500"},{"id":"600","name":"Semi-Bold 600"},{"id":"700","name":"Bold 700"},{"id":"800","name":"Extra-Bold 800"},{"id":"900","name":"Ultra-Bold 900"}],"subsets":[{"id":"latin","name":"Latin"}]},"Raleway Dots":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Rambla":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Rammetto One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Ranchers":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Rancho":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Rationale":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Redressed":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Reenie Beanie":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Revalia":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Ribeye":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Ribeye Marrow":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Righteous":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Risque":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Roboto":{"variants":[{"id":"100","name":"Ultra-Light 100"},{"id":"300","name":"Book 300"},{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"500","name":"Medium 500"},{"id":"700","name":"Bold 700"},{"id":"900","name":"Ultra-Bold 900"},{"id":"900italic","name":"Ultra-Bold 900 Italic"}],"subsets":[{"id":"vietnamese","name":"Vietnamese"},{"id":"greek-ext","name":"Greek Extended"},{"id":"latin","name":"Latin"},{"id":"cyrillic-ext","name":"Cyrillic Extended"},{"id":"greek","name":"Greek"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Roboto Condensed":{"variants":[{"id":"300","name":"Book 300"},{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"vietnamese","name":"Vietnamese"},{"id":"greek-ext","name":"Greek Extended"},{"id":"latin","name":"Latin"},{"id":"cyrillic-ext","name":"Cyrillic Extended"},{"id":"greek","name":"Greek"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Roboto Slab":{"variants":[{"id":"100","name":"Ultra-Light 100"},{"id":"300","name":"Book 300"},{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"vietnamese","name":"Vietnamese"},{"id":"greek-ext","name":"Greek Extended"},{"id":"latin","name":"Latin"},{"id":"cyrillic-ext","name":"Cyrillic Extended"},{"id":"greek","name":"Greek"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Rochester":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Rock Salt":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Rokkitt":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"}]},"Romanesco":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Ropa Sans":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Rosario":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"latin","name":"Latin"}]},"Rosarivo":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Rouge Script":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Ruda":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"},{"id":"900","name":"Ultra-Bold 900"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Rufina":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Ruge Boogie":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Ruluko":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Rum Raisin":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Ruslan Display":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"cyrillic-ext","name":"Cyrillic Extended"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Russo One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Ruthie":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Rye":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Sacramento":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Sail":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Salsa":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Sanchez":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Sancreek":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Sansita One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Sarina":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Satisfy":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Scada":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Schoolbell":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Seaweed Script":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Sevillana":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Seymour One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Shadows Into Light":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Shadows Into Light Two":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Shanti":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Share":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Share Tech":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Share Tech Mono":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Shojumaru":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Short Stack":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Siemreap":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"khmer","name":"Khmer"}]},"Sigmar One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Signika":{"variants":[{"id":"300","name":"Book 300"},{"id":"400","name":"Normal 400"},{"id":"600","name":"Semi-Bold 600"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Signika Negative":{"variants":[{"id":"300","name":"Book 300"},{"id":"400","name":"Normal 400"},{"id":"600","name":"Semi-Bold 600"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Simonetta":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"900","name":"Ultra-Bold 900"},{"id":"900italic","name":"Ultra-Bold 900 Italic"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Sintony":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Sirin Stencil":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Six Caps":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Skranji":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Slackey":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Smokum":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Smythe":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Sniglet":{"variants":[{"id":"400","name":"Normal 400"},{"id":"800","name":"Extra-Bold 800"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Snippet":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Snowburst One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Sofadi One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Sofia":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Sonsie One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Sorts Mill Goudy":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Source Code Pro":{"variants":[{"id":"200","name":"Light 200"},{"id":"300","name":"Book 300"},{"id":"400","name":"Normal 400"},{"id":"500","name":"Medium 500"},{"id":"600","name":"Semi-Bold 600"},{"id":"700","name":"Bold 700"},{"id":"900","name":"Ultra-Bold 900"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Source Sans Pro":{"variants":[{"id":"200","name":"Light 200"},{"id":"300","name":"Book 300"},{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"600","name":"Semi-Bold 600"},{"id":"700","name":"Bold 700"},{"id":"900","name":"Ultra-Bold 900"},{"id":"900italic","name":"Ultra-Bold 900 Italic"}],"subsets":[{"id":"vietnamese","name":"Vietnamese"},{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Special Elite":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Spicy Rice":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Spinnaker":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Spirax":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Squada One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Stalemate":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Stalinist One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Stardos Stencil":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"}]},"Stint Ultra Condensed":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Stint Ultra Expanded":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Stoke":{"variants":[{"id":"300","name":"Book 300"},{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Strait":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Sue Ellen Francisco":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Sunshiney":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Supermercado One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Suwannaphum":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"khmer","name":"Khmer"}]},"Swanky and Moo Moo":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Syncopate":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"}]},"Tangerine":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"}]},"Taprom":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"khmer","name":"Khmer"}]},"Tauri":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Telex":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Tenor Sans":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"cyrillic-ext","name":"Cyrillic Extended"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Text Me One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"The Girl Next Door":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Tienne":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"},{"id":"900","name":"Ultra-Bold 900"}],"subsets":[{"id":"latin","name":"Latin"}]},"Tinos":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"vietnamese","name":"Vietnamese"},{"id":"greek-ext","name":"Greek Extended"},{"id":"latin","name":"Latin"},{"id":"cyrillic-ext","name":"Cyrillic Extended"},{"id":"greek","name":"Greek"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Titan One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Titillium Web":{"variants":[{"id":"200","name":"Light 200"},{"id":"300","name":"Book 300"},{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"600","name":"Semi-Bold 600"},{"id":"700","name":"Bold 700"},{"id":"900","name":"Ultra-Bold 900"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Trade Winds":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Trocchi":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Trochut":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"}]},"Trykker":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Tulpen One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Ubuntu":{"variants":[{"id":"300","name":"Book 300"},{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"500","name":"Medium 500"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"greek-ext","name":"Greek Extended"},{"id":"latin","name":"Latin"},{"id":"cyrillic-ext","name":"Cyrillic Extended"},{"id":"greek","name":"Greek"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Ubuntu Condensed":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"greek-ext","name":"Greek Extended"},{"id":"latin","name":"Latin"},{"id":"cyrillic-ext","name":"Cyrillic Extended"},{"id":"greek","name":"Greek"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Ubuntu Mono":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"greek-ext","name":"Greek Extended"},{"id":"latin","name":"Latin"},{"id":"cyrillic-ext","name":"Cyrillic Extended"},{"id":"greek","name":"Greek"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Ultra":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Uncial Antiqua":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Underdog":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Unica One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"UnifrakturCook":{"variants":[{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"}]},"UnifrakturMaguntia":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Unkempt":{"variants":[{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"}]},"Unlock":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Unna":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"VT323":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Vampiro One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Varela":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Varela Round":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Vast Shadow":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Vibur":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Vidaloka":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Viga":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Voces":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Volkhov":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"latin","name":"Latin"}]},"Vollkorn":{"variants":[{"id":"400","name":"Normal 400"},{"id":"italic","name":"Italic"},{"id":"700","name":"Bold 700"},{"id":"700italic","name":"Bold 700 Italic"}],"subsets":[{"id":"latin","name":"Latin"}]},"Voltaire":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Waiting for the Sunrise":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Wallpoet":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Walter Turncoat":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Warnes":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Wellfleet":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Wendy One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Wire One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Yanone Kaffeesatz":{"variants":[{"id":"200","name":"Light 200"},{"id":"300","name":"Book 300"},{"id":"400","name":"Normal 400"},{"id":"700","name":"Bold 700"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"latin-ext","name":"Latin Extended"}]},"Yellowtail":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Yeseva One":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"},{"id":"cyrillic","name":"Cyrillic"},{"id":"latin-ext","name":"Latin Extended"}]},"Yesteryear":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]},"Zeyada":{"variants":[{"id":"400","name":"Normal 400"}],"subsets":[{"id":"latin","name":"Latin"}]}}', true); $normal_fonts = array("Arial, Helvetica, sans-serif" => "Arial, Helvetica, sans-serif", "'Arial Black', Gadget, sans-serif" => "'Arial Black', Gadget, sans-serif", "'Bookman Old Style', serif" => "'Bookman Old Style', serif", "'Comic Sans MS', cursive" => "'Comic Sans MS', cursive", "Courier, monospace" => "Courier, monospace", "Garamond, serif" => "Garamond, serif", "Georgia, serif" => "Georgia, serif", "Impact, Charcoal, sans-serif" => "Impact, Charcoal, sans-serif", "'Lucida Console', Monaco, monospace" => "'Lucida Console', Monaco, monospace", "'Lucida Sans Unicode', 'Lucida Grande', sans-serif" => "'Lucida Sans Unicode', 'Lucida Grande', sans-serif", "'MS Sans Serif', Geneva, sans-serif" => "'MS Sans Serif', Geneva, sans-serif", "'MS Serif', 'New York', sans-serif" => "'MS Serif', 'New York', sans-serif", "'Palatino Linotype', 'Book Antiqua', Palatino, serif" => "'Palatino Linotype', 'Book Antiqua', Palatino, serif", "Tahoma,Geneva, sans-serif" => "Tahoma, Geneva, sans-serif", "'Times New Roman', Times,serif" => "'Times New Roman', Times, serif", "'Trebuchet MS', Helvetica, sans-serif" => "'Trebuchet MS', Helvetica, sans-serif", "Verdana, Geneva, sans-serif" => "Verdana, Geneva, sans-serif"); $saved = false; if (qa_clicked('cs_reset_button')) { reset_theme_options(); $saved = 'Settings saved'; } if (qa_clicked('cs_save_button')) { // General qa_opt('logo_url', qa_post_text('cs_logo_field')); qa_opt('cs_mobile_logo_url', qa_post_text('cs_mobile_logo_url_field')); qa_opt('cs_favicon_url', qa_post_text('cs_favicon_field')); qa_opt('cs_enable_gzip', (bool) qa_post_text('cs_enable_gzip')); qa_opt('cs_featured_image_width', (int) qa_post_text('cs_featured_image_width')); qa_opt('cs_featured_image_height', (int) qa_post_text('cs_featured_image_height')); qa_opt('cs_featured_thumbnail_width', (int) qa_post_text('cs_featured_thumbnail_width')); qa_opt('cs_featured_thumbnail_height', (int) qa_post_text('cs_featured_thumbnail_height')); qa_opt('cs_crop_x', qa_post_text('cs_crop_x')); qa_opt('cs_crop_y', qa_post_text('cs_crop_y')); // Layout qa_opt('cs_nav_position', qa_post_text('cs_nav_position')); qa_opt('cs_nav_fixed', (bool) qa_post_text('cs_nav_fixed')); qa_opt('cs_show_icon', (bool) qa_post_text('cs_show_icon')); qa_opt('cs_enable_ask_button', (bool) qa_post_text('cs_enable_ask_button')); qa_opt('cs_enable_category_nav', (bool) qa_post_text('cs_enable_category_nav')); qa_opt('cs_enable_clean_qlist', (bool) qa_post_text('cs_enable_clean_qlist')); qa_opt('cs_enable_default_home', (bool) qa_post_text('cs_enable_default_home')); qa_opt('cs_enable_except', (bool) qa_post_text('cs_enable_except')); qa_opt('cs_except_len', (int) qa_post_text('cs_except_len')); qa_opt('cs_enable_avatar_lists', (bool) qa_post_text('cs_enable_avatar_lists')); if (qa_opt('cs_enable_avatar_lists')) { qa_opt('avatar_q_list_size', 35); } else { qa_opt('avatar_q_list_size', 0); } // set avatar size to zero so Q2A won't load them qa_opt('show_view_counts', (bool) qa_post_text('cs_enable_views_lists')); qa_opt('cs_show_tags_list', (bool) qa_post_text('cs_show_tags_list')); qa_opt('cs_horizontal_voting_btns', (bool) qa_post_text('cs_horizontal_voting_btns')); qa_opt('cs_enble_back_to_top', (bool) qa_post_text('cs_enble_back_to_top')); qa_opt('cs_back_to_top_location', qa_post_text('cs_back_to_top_location')); // Styling qa_opt('cs_styling_rtl', (bool) qa_post_text('cs_styling_rtl')); qa_opt('cs_styling_duplicate_question', (bool) qa_post_text('cs_styling_duplicate_question')); qa_opt('cs_styling_solved_question', (bool) qa_post_text('cs_styling_solved_question')); qa_opt('cs_styling_closed_question', (bool) qa_post_text('cs_styling_closed_question')); qa_opt('cs_styling_open_question', (bool) qa_post_text('cs_styling_open_question')); qa_opt('cs_bg_select', qa_post_text('cs_bg_select')); qa_opt('cs_bg_color', qa_post_text('cs_bg_color')); qa_opt('cs_text_color', qa_post_text('cs_text_color')); qa_opt('cs_border_color', qa_post_text('cs_border_color')); qa_opt('cs_q_link_color', qa_post_text('cs_q_link_color')); qa_opt('cs_q_link_hover_color', qa_post_text('cs_q_link_hover_color')); qa_opt('cs_nav_link_color', qa_post_text('cs_nav_link_color')); qa_opt('cs_nav_link_color_hover', qa_post_text('cs_nav_link_color_hover')); qa_opt('cs_subnav_link_color', qa_post_text('cs_subnav_link_color')); qa_opt('cs_subnav_link_color_hover', qa_post_text('cs_subnav_link_color_hover')); qa_opt('cs_link_color', qa_post_text('cs_link_color')); qa_opt('cs_link_hover_color', qa_post_text('cs_link_hover_color')); qa_opt('cs_highlight_color', qa_post_text('cs_highlight_color')); qa_opt('cs_highlight_bg_color', qa_post_text('cs_highlight_bg_color')); qa_opt('cs_ask_btn_bg', qa_post_text('cs_ask_btn_bg')); require_once $this->theme_directory . '/inc/styles.php'; // Generate customized CSS styling // Typography $typo_options = $_POST['typo_option']; $google_fonts = array(); foreach ($typo_options as $k => $options) { qa_opt('typo_options_family_' . $k, $options['family']); qa_opt('typo_options_style_' . $k, $options['style']); qa_opt('typo_options_size_' . $k, $options['size']); qa_opt('typo_options_linehight_' . $k, $options['linehight']); if (isset($google_webfonts[$options['family']]) && !in_array($options['family'], $google_fonts)) { $google_fonts[] = $options['family']; qa_opt('typo_options_backup_' . $k, $options['backup']); } else { qa_opt('typo_options_backup_' . $k, ''); } } qa_opt('typo_googlefonts', json_encode($google_fonts)); // Social $SocialCount = (int) qa_post_text('social_count'); // number of advertisement items $social_links = array(); $i = 0; while ($SocialCount > 0 and $i < 100) { // don't create an infinite loop if (null !== qa_post_text('social_link_' . $i)) { $social_links[$i]['social_link'] = qa_post_text('social_link_' . $i); $social_links[$i]['social_title'] = qa_post_text('social_title_' . $i); $social_links[$i]['social_icon'] = qa_post_text('social_icon_' . $i); if ($social_links[$i]['social_icon'] == '1' && null !== qa_post_text('social_image_url_' . $i)) { $social_links[$i]['social_icon_file'] = qa_post_text('social_image_url_' . $i); } $SocialCount--; } $i++; } qa_opt('cs_social_list', json_encode($social_links)); qa_opt('cs_social_enable', (bool) qa_post_text('cs_social_enable')); // Advertisement $AdsCount = (int) qa_post_text('adv_number'); // number of advertisement items $ads = array(); $i = 0; while ($AdsCount > 0 and $i < 100) { // don't create an infinite loop if (null !== qa_post_text('adv_adsense_' . $i)) { // add adsense ads $ads[$i]['adv_adsense'] = qa_post_text('adv_adsense_' . $i); $ads[$i]['adv_location'] = qa_post_text('adv_location_' . $i); $AdsCount--; } elseif (@getimagesize(@$_FILES['cs_adv_image_' . $i]['tmp_name']) > 0 or null !== qa_post_text('adv_image_title_' . $i) or null !== qa_post_text('adv_image_link_' . $i) or null !== qa_post_text('adv_location_' . $i)) { // add static ads if (null !== qa_post_text('adv_image_url_' . $i)) { $ads[$i]['adv_image'] = qa_post_text('adv_image_url_' . $i); } $ads[$i]['adv_image_title'] = qa_post_text('adv_image_title_' . $i); $ads[$i]['adv_image_link'] = qa_post_text('adv_image_link_' . $i); $ads[$i]['adv_location'] = qa_post_text('adv_location_' . $i); $AdsCount--; } $i++; } qa_opt('cs_advs', json_encode($ads)); qa_opt('cs_enable_adv_list', (bool) qa_post_text('cs_enable_adv_list')); qa_opt('cs_ads_below_question_title', base64_encode($_REQUEST['cs_ads_below_question_title'])); qa_opt('cs_ads_after_question_content', base64_encode($_REQUEST['cs_ads_after_question_content'])); // footer qa_opt('cs_enable_footer_nav', (bool) qa_post_text('cs_enable_footer_nav')); qa_opt('cs_footer_copyright', qa_post_text('cs_footer_copyright')); $saved = true; $saved = 'Settings saved'; } // Load Advertisements $advs = json_decode(qa_opt('cs_advs'), true); $i = 0; $adv_content = ''; if (isset($advs)) { foreach ($advs as $k => $adv) { if (true) { // use list to choose location of advertisement $list_options = ''; for ($count = 1; $count <= qa_opt('page_size_qs'); $count++) { $list_options .= '<option value="' . $count . '"' . ($count == @$adv['adv_location'] ? ' selected' : '') . '>' . $count . '</option>'; } $adv_location = '<select id="adv_location_' . $i . '" name="adv_location_' . $i . '" class="qa-form-wide-select">' . $list_options . '</select>'; } else { $adv_location = '<input id="adv_location_' . $i . '" name="adv_location_' . $i . '" class="form-control" value="" placeholder="Position of advertisements in list" />'; } if (isset($adv['adv_adsense'])) { $adv_content .= '<tr id="adv_box_' . $i . '"> <th class="qa-form-tall-label"> Advertisment #' . ($i + 1) . ' <span class="description">Google Adsense Code</span> </th> <td class="qa-form-tall-data"> <input class="form-control" id="adv_adsense_' . $i . '" name="adv_adsense_' . $i . '" type="text" value="' . $adv['adv_adsense'] . '"> <span class="description">Display After this number of questions</span> ' . $adv_location . ' <button advid="' . $i . '" id="advremove" name="advremove" class="qa-form-tall-button advremove pull-right btn" type="submit">Remove This Advertisement</button></td> </tr>'; } else { if (!empty($adv['adv_image'])) { $image = '<img id="adv_preview_' . $i . '" src="' . $adv['adv_image'] . '" class="adv-preview img-thumbnail">'; } else { $image = '<img id="adv_preview_' . $i . '" src="" class="adv-preview img-thumbnail" style="display:none;">'; } $adv_content .= '<tr id="adv_box_' . $i . '"> <th class="qa-form-tall-label"> Advertisement #' . ($i + 1) . ' <span class="description">static advertisement</span> </th> <td class="qa-form-tall-data"> <div class="clearfix"></div> ' . $image . ' <div class="clearfix"></div> <div id="adv_image_uploader_' . $i . '">Upload Icon</div> <input type="hidden" value="' . @$adv['social_icon_file'] . '" id="social_image_url_' . $i . '" name="social_image_url_' . $i . '"> <span class="description">Image Title</span> <input class="form-control" type="text" id="adv_image_title_' . $i . '" name="adv_image_title_' . $i . '" value="' . @$adv['adv_image_title'] . '"> <span class="description">Target link</span> <input class="form-control" id="adv_image_link_' . $i . '" name="adv_image_link_' . $i . '" type="text" value="' . @$adv['adv_image_link'] . '"> <span class="description">Display After this number of questions</span> ' . $adv_location . ' <input type="hidden" value="' . @$adv['adv_image'] . '" id="adv_image_url_' . $i . '" name="adv_image_url_' . $i . '"> <button advid="' . $i . '" id="advremove" name="advremove" class="qa-form-tall-button advremove pull-right btn" type="submit">Remove This Advertisement</button> </td> </tr>'; } $i++; } } $adv_content .= '<input type="hidden" value="' . $i . '" id="adv_number" name="adv_number">'; $adv_content .= '<input type="hidden" value="' . qa_opt('page_size_qs') . '" id="question_list_count" name="question_list_count">'; // Load Advertisements $i = 0; $social_content = ''; $social_fields = json_decode(qa_opt('cs_social_list'), true); if (isset($social_fields)) { foreach ($social_fields as $k => $social_field) { $list_options = '<option class="icon-wrench" value="1"' . (@$social_field['social_icon'] == '1' ? ' selected' : '') . '>Upload Social Icon</option>'; foreach (cs_social_icons() as $icon => $name) { $list_options .= '<option class="' . $icon . '" value="' . $icon . '"' . ($icon == @$social_field['social_icon'] ? ' selected' : '') . '>' . $name . '</option>'; } $social_icon_list = '<select id="social_icon_' . $i . '" name="social_icon_' . $i . '" class="qa-form-wide-select social-select" sociallistid="' . $i . '">' . $list_options . '</select>'; if (isset($social_field['social_link'])) { if (!empty($social_field['social_icon_file']) and @$social_field['social_icon'] == '1') { $image = '<img id="social_image_preview_' . $i . '" src="' . $social_field['social_icon_file'] . '" class="social-preview img-thumbnail">'; } else { $image = '<img id="social_image_preview_' . $i . '" src="" class="social-preview img-thumbnail" style="display:none;">'; } $social_content .= '<tr id="soical_box_' . $i . '"> <th class="qa-form-tall-label"> Social Link #' . ($i + 1) . ' <span class="description">choose Icon and link to your social profile</span> </th> <td class="qa-form-tall-data"> <span class="description">Social Profile Link</span> <input class="form-control" id="social_link_' . $i . '" name="social_link_' . $i . '" type="text" value="' . $social_field['social_link'] . '"> <span class="description">Link Title</span> <input class="form-control" id="social_title_' . $i . '" name="social_title_' . $i . '" type="text" value="' . $social_field['social_title'] . '"> <span class="description">Choose Social Icon</span> ' . $social_icon_list . ' <div class="social_icon_file_' . $i . '"' . (@$social_field['social_icon'] == '1' ? '' : ' style="display:none;"') . '> <span class="description">upload Social Icon</span> ' . $image . ' <div id="social_image_uploader_' . $i . '">Upload Icon</div> <input type="hidden" value="' . @$social_field['social_icon_file'] . '" id="social_image_url_' . $i . '" name="social_image_url_' . $i . '"> </div> <button id="social_remove" class="qa-form-tall-button social_remove pull-right btn" type="submit" name="social_remove" socialid="' . $i . '">Remove This Link</button> </tr>'; } $i++; } } $social_content .= '<input type="hidden" value="' . $i . '" id="social_count" name="social_count">'; // Background list // List of Backgrounds $p_path = $this->theme_directory . '/images/patterns'; $bg_images = array(); $list_options = ''; $files = scandir($p_path, 1); $list_options .= '<option class="icon-wrench" value="bg_default"' . (qa_opt('cs_bg_select') == 'bg_default' ? ' selected' : '') . '>Default Background</option>'; $list_options .= '<option class="icon-wrench" value="bg_color"' . (qa_opt('cs_bg_select') == 'bg_color' ? ' selected' : '') . '>only use Background Color</option>'; //@$bg_images[qa_opt('qat_bg_image_index') foreach ($files as $file) { if (!(empty($file) or $file == '.' or $file == '..')) { $image = preg_replace("/\\.[^.]*\$/", "", $file); $bg_images[] = $image; $list_options .= '<option value="' . $image . '"' . (qa_opt('cs_bg_select') == $image ? ' selected' : '') . '>' . $image . '</option>'; } } $bg_select = '<select id="cs_bg_select" name="cs_bg_select" class="qa-form-wide-select">' . $list_options . '</select>'; $cs_page = ' <form class="form-horizontal" enctype="multipart/form-data" method="post"> <div class="qa-part-tabs-nav"> <ul class="ra-option-tabs nav nav-tabs"> <li> <a href="#" data-toggle=".qa-part-form-tc-general">General</a> </li> <li> <a href="#" data-toggle=".qa-part-form-tc-layout">Layouts</a> </li> <li> <a href="#" data-toggle=".qa-part-form-tc-styling">Styling</a> </li> <li> <a href="#" data-toggle=".qa-part-form-tc-typo">Typography</a> </li> <li> <a href="#" data-toggle=".qa-part-form-tc-social">Social</a> </li> <li> <a href="#" data-toggle=".qa-part-form-tc-ads">Advertisements</a> </li> <li> <a href="#" data-toggle=".qa-part-form-tc-footer">Footer</a> </li> </ul> </div> <div class="qa-part-form-tc-general"> <h3>General Settings</h3> <table class="qa-form-tall-table options-table"> <tbody> <tr> <th class="qa-form-tall-label"> Logo <span class="description">Upload your own logo(35px hight is recommended)</span> </th> <td class="qa-form-tall-data"> ' . (qa_opt('logo_url') ? '<img id="logo-preview" class="logo-preview img-thumbnail" src="' . qa_opt('logo_url') . '">' : '<img id="logo-preview" class="logo-preview img-thumbnail" style="display:none;" src="">') . ' <div id="logo_uploader">Upload</div> <input id="cs_logo_field" type="hidden" name="cs_logo_field" value="' . qa_opt('logo_url') . '"> </td> </tr> <tr> <th class="qa-form-tall-label"> Logo for Mobile Devices <span class="description">Upload your Small logo for mobile devices</span> </th> <td class="qa-form-tall-data"> ' . (qa_opt('cs_mobile_logo_url') ? '<img id="mobile-logo-preview" class="logo-preview mobile-logo-preview img-thumbnail" src="' . qa_opt('cs_mobile_logo_url') . '">' : '<img id="mobile-logo-preview" class="mobile-logo-preview img-thumbnail" style="display:none;" src="">') . ' <div id="mobile_logo_uploader">Upload</div> <input id="cs_mobile_logo_url_field" type="hidden" name="cs_mobile_logo_url_field" value="' . qa_opt('cs_mobile_logo_url') . '"> </td> </tr> <tr> <th class="qa-form-tall-label"> Favicon <span class="description">favicon image (32px32px).</span> </th> <td class="qa-form-tall-data"> ' . (qa_opt('cs_favicon_url') ? '<img id="favicon-preview" class="favicon-preview img-thumbnail" src="' . qa_opt('cs_favicon_url') . '">' : '<img id="favicon-preview" class="favicon-preview img-thumbnail" style="display:none;" src="">') . ' <div id="favicon_uploader">Upload</div> <input id="cs_favicon_field" type="hidden" name="cs_favicon_field" value="' . qa_opt('cs_favicon_url') . '"> </td> </tr> </tbody> <tbody> <tr> <th class="qa-form-tall-label"> Compression <span class="description">Use Gzip compression to increase loading speed</span> </th> <td class="qa-form-tall-label"> <div class="on-off-checkbox-container"> <input type="checkbox" class="on-off-checkbox" value="1"' . (qa_opt('cs_enable_gzip') ? ' checked=""' : '') . ' id="cs_enable_gzip" name="cs_enable_gzip"> <label for="cs_enable_gzip"> </label> </div> </td> </tr> </tbody> <tbody> <tr><td><h3>Featured Questions</h3></td></tr> <tr> <th class="qa-form-tall-label"> Featured Image Width <span class="description">Question\'s Featured Image Width</span> </th> <td class="qa-form-tall-label"> <div class="input-group font-input"> <input id="cs_featured_image_width" class="form-control featured-image-width" type="text" name="cs_featured_image_width" value="' . qa_opt('cs_featured_image_width') . '"> <span class="input-group-addon">px</span> </div> </td> </tr> <tr> <th class="qa-form-tall-label"> Featured Image Hight <span class="description">Question\'s Featured Image Hight</span> </th> <td class="qa-form-tall-label"> <div class="input-group font-input"> <input id="cs_featured_image_height" class="form-control featured-image-height" type="text" name="cs_featured_image_height" value="' . qa_opt('cs_featured_image_height') . '"> <span class="input-group-addon">px</span> </div> </td> </tr> <tr> <th class="qa-form-tall-label"> Thumbnail Width <span class="description">Question\'s Featured Image Thumbnail Width</span> </th> <td class="qa-form-tall-label"> <div class="input-group font-input"> <input id="cs_featured_thumbnail_width" class="form-control featured-thumb-width" type="text" name="cs_featured_thumbnail_width" value="' . qa_opt('cs_featured_thumbnail_width') . '"> <span class="input-group-addon">px</span> </div> </td> </tr> <tr> <th class="qa-form-tall-label"> Thumbnail Hight <span class="description">Question\'s Featured Image Hight</span> </th> <td class="qa-form-tall-label"> <div class="input-group font-input"> <input id="cs_featured_thumbnail_height" class="form-control featured-thumb-height" type="text" name="cs_featured_thumbnail_height" value="' . qa_opt('cs_featured_thumbnail_height') . '"> <span class="input-group-addon">px</span> </div> </td> </tr> <tr> <th class="qa-form-tall-label"> Image Cropping X <span class="description">Crop Featured image from Right/Left</span> </th> <td class="qa-form-tall-label"> <select id="cs_crop_x" name="cs_crop_y" > <option' . (qa_opt('cs_crop_x') == 'l' ? ' selected' : '') . ' value="l">left</option> <option' . (qa_opt('cs_crop_x') == 'c' ? ' selected' : '') . ' value="c">Center</option> <option' . (qa_opt('cs_crop_x') == 'r' ? ' selected' : '') . ' value="r">right</option> </select> </td> </tr> <tr> <th class="qa-form-tall-label"> Image Cropping Y <span class="description">Crop Featured image from Top/Bottom</span> </th> <td class="qa-form-tall-label"> <select id="cs_crop_y" name="cs_crop_y" > <option' . (qa_opt('cs_crop_y') == 't' ? ' selected' : '') . ' value="t">Top</option> <option' . (qa_opt('cs_crop_y') == 'c' ? ' selected' : '') . ' value="c">Center</option> <option' . (qa_opt('cs_crop_y') == 'b' ? ' selected' : '') . ' value="b">Bottom</option> </select> </td> </tr> </tbody> </table> </div> <div class="qa-part-form-tc-layout"> <h3>Layout Settings</h3> <table class="qa-form-tall-table options-table"> <tbody> <tr> <th class="qa-form-tall-label"> Enable RTL Styling <span class="description">for Right to Left Languages</span> </th> <td class="qa-form-tall-label"> <div class="on-off-checkbox-container"> <input type="checkbox" class="on-off-checkbox" value="1"' . (qa_opt('cs_styling_rtl') ? ' checked=""' : '') . ' id="cs_styling_rtl" name="cs_styling_rtl"> <label for="cs_styling_rtl"> </label> </div> </td> </tr> </tbody> <tbody> <tr> <th class="qa-form-tall-label"> Navigation Position <span class="description">Where to show navigation</span> </th> <td class="qa-form-tall-label"> <input class="theme-option-radio" type="radio"' . (qa_opt('cs_nav_position') == 'left' ? ' checked=""' : '') . ' id="cs_nav_position" name="cs_nav_position" value="left"> <label for="cs_nav_position">Left</label> <input class="theme-option-radio" type="radio"' . (qa_opt('cs_nav_position') == 'top' ? ' checked=""' : '') . ' id="cs_nav_position_top" name="cs_nav_position" value="top"> <label for="cs_nav_position_top">Top</label> </td> </tr> </tbody> <tbody> <tr> <th class="qa-form-tall-label"> Fixed Navigation </th> <td class="qa-form-tall-label"> <div class="on-off-checkbox-container"> <input type="checkbox" class="on-off-checkbox" value="1"' . (qa_opt('cs_nav_fixed') ? ' checked=""' : '') . ' id="cs_nav_fixed" name="cs_nav_fixed"> <label for="cs_nav_fixed"></label> </div> </td> </tr> <tr> <th class="qa-form-tall-label"> Show menu Icon </th> <td class="qa-form-tall-label"> <div class="on-off-checkbox-container"> <input type="checkbox" class="on-off-checkbox" value="1"' . (qa_opt('cs_show_icon') ? ' checked=""' : '') . ' id="cs_show_icon" name="cs_show_icon"> <label for="cs_show_icon"></label> </div> </td> </tr> <tr> <th class="qa-form-tall-label"> Ask Button <span class="description">Enable to show Ask Button in header.</span> </th> <td class="qa-form-tall-label"> <div class="on-off-checkbox-container"> <input type="checkbox" class="on-off-checkbox" value="1"' . (qa_opt('cs_enable_ask_button') ? ' checked=""' : '') . ' id="cs_enable_ask_button" name="cs_enable_ask_button"> <label for="cs_enable_ask_button"></label> </div> </td> </tr> <tr> <th class="qa-form-tall-label"> Categories Drop down <span class="description">Enable to show Categories List in drop down menu in header.</span> </th> <td class="qa-form-tall-label"> <div class="on-off-checkbox-container"> <input type="checkbox" class="on-off-checkbox" value="1"' . (qa_opt('cs_enable_category_nav') ? ' checked=""' : '') . ' id="cs_enable_category_nav" name="cs_enable_category_nav"> <label for="cs_enable_category_nav"></label> </div> </td> </tr> </tbody> <tbody> <tr><td><h3>Home Page</h3></td></tr> <tr> <th class="qa-form-tall-label"> Toggle question list in home <span class="description">Toggle if you want to show default question list in home page</span> </th> <td class="qa-form-tall-label"> <div class="on-off-checkbox-container"> <input type="checkbox" class="on-off-checkbox" value="1"' . (qa_opt('cs_enable_default_home') ? ' checked=""' : '') . ' id="cs_enable_default_home" name="cs_enable_default_home"> <label for="cs_enable_default_home"></label> </div> </td> </tr> <tr> <th class="qa-form-tall-label"> Clean Question List <span class="description">Enable to switch to default question list.</span> </th> <td class="qa-form-tall-label"> <div class="on-off-checkbox-container"> <input type="checkbox" class="on-off-checkbox" value="1"' . (qa_opt('cs_enable_clean_qlist') ? ' checked=""' : '') . ' id="cs_enable_clean_qlist" name="cs_enable_clean_qlist"> <label for="cs_enable_clean_qlist"></label> </div> </td> </tr> </tbody> <tbody> <tr><td><h3>Question Lists</h3></td></tr> <tr> <th class="qa-form-tall-label"> Question Excerpt <span class="description">Toggle question description in question lists.</span> </th> <td class="qa-form-tall-label"> <div class="on-off-checkbox-container"> <input type="checkbox" class="on-off-checkbox" value="1"' . (qa_opt('cs_enable_except') ? ' checked=""' : '') . ' id="cs_enable_except" name="cs_enable_except"> <label for="cs_enable_except"></label> </div> </td> </tr> <tr id="cs_except_length"> <th class="qa-form-tall-label"> Excerpt Length <span class="description">Length of questions description in question lists</span> </th> <td class="qa-form-tall-label"> <input class="qa-form-wide-number" type="text" value="' . qa_opt('cs_except_len') . '" id="cs_except_len" name="cs_except_len"> </td> </tr> <tr> <th class="qa-form-tall-label"> Avatars in lists <span class="description">Toggle avatars in question lists.</span> </th> <td class="qa-form-tall-label"> <div class="on-off-checkbox-container"> <input type="checkbox" class="on-off-checkbox" value="1"' . (qa_opt('cs_enable_avatar_lists') ? ' checked=""' : '') . ' id="cs_enable_avatar_lists" name="cs_enable_avatar_lists"> <label for="cs_enable_avatar_lists"></label> </div> </td> </tr> <tr> <th class="qa-form-tall-label"> View Count <span class="description">Toggle View Count in question lists.</span> </th> <td class="qa-form-tall-label"> <div class="on-off-checkbox-container"> <input type="checkbox" class="on-off-checkbox" value="1"' . (qa_opt('show_view_counts') ? ' checked=""' : '') . ' id="cs_enable_views_lists" name="cs_enable_views_lists"> <label for="cs_enable_views_lists"></label> </div> </td> </tr> <tr> <th class="qa-form-tall-label"> Question Tags <span class="description">Toggle Tags in question lists.</span> </th> <td class="qa-form-tall-label"> <div class="on-off-checkbox-container"> <input type="checkbox" class="on-off-checkbox" value="1"' . (qa_opt('cs_show_tags_list') ? ' checked=""' : '') . ' id="cs_show_tags_list" name="cs_show_tags_list"> <label for="cs_show_tags_list"></label> </div> </td> </tr> </tbody> <tbody> <tr> <th class="qa-form-tall-label"> Horizontal Voting Buttons <span class="description">Switch between horizontal and vertical voting buttons</span> </th> <td class="qa-form-tall-label"> <div class="on-off-checkbox-container"> <input type="checkbox" class="on-off-checkbox" value="1"' . (qa_opt('cs_horizontal_voting_btns') ? ' checked=""' : '') . ' id="cs_horizontal_voting_btns" name="cs_horizontal_voting_btns"> <label for="cs_horizontal_voting_btns"> </label> </div> </td> </tr> </tbody> <tbody> <tr> <th class="qa-form-tall-label"> Back to Top Button <span class="description">Enable Back to Top</span> </th> <td class="qa-form-tall-label"> <div class="on-off-checkbox-container"> <input type="checkbox" class="on-off-checkbox" value="1"' . (qa_opt('cs_enble_back_to_top') ? ' checked=""' : '') . ' id="cs_enble_back_to_top" name="cs_enble_back_to_top"> <label for="cs_enble_back_to_top"> </label> </div> </td> </tr> <tr id="back_to_top_location_container" ' . (qa_opt('cs_enble_back_to_top') ? '' : ' style="display:none;"') . '> <th class="qa-form-tall-label"> Back To Top\'s Position <span class="description">Back To Top button\'s Position</span> </th> <td class="qa-form-tall-label"> <input class="theme-option-radio" type="radio"' . (qa_opt('cs_back_to_top_location') == 'nav' ? ' checked=""' : '') . ' id="cs_back_to_top_nav" name="cs_back_to_top_location" value="nav"> <label for="cs_back_to_top_nav">Under Navigation</label> <input class="theme-option-radio" type="radio"' . (qa_opt('cs_back_to_top_location') == 'right' ? ' checked=""' : '') . ' id="cs_back_to_top_right" name="cs_back_to_top_location" value="right"> <label for="cs_back_to_top_right">Bottom Right</label> </td> </tr> </tbody> </table> </div> <div class="qa-part-form-tc-styling"> <h3>Colors</h3> <table class="qa-form-tall-table options-table"> <tbody> <tr> <th class="qa-form-tall-label"> Body background </th> <td class="qa-form-tall-label"> ' . $bg_select . ' </td> </tr> <tr id="bg-color-container"' . (qa_opt('cs_bg_select') == 'bg_color' ? '' : ' style="display:none;"') . '> <th class="qa-form-tall-label"> Body Font Color </th> <td class="qa-form-tall-label"> <input type="colorpicker" class="form-control" value="' . qa_opt('cs_bg_color') . '" id="cs_bg_color" name="cs_bg_color"> </td> </tr> </tbody> <tbody> <tr> <th class="qa-form-tall-label"> Text color </th> <td class="qa-form-tall-label"> <input type="colorpicker" class="form-control" value="' . qa_opt('cs_text_color') . '" id="cs_text_color" name="cs_text_color"> </td> </tr> <tr> <th class="qa-form-tall-label"> Border color </th> <td class="qa-form-tall-label"> <input type="colorpicker" class="form-control" value="' . qa_opt('cs_border_color') . '" id="cs_border_color" name="cs_border_color"> </td> </tr> <tr> <th class="qa-form-tall-label"> Link color </th> <td class="qa-form-tall-label"> Link Color<input type="colorpicker" class="form-control" value="' . qa_opt('cs_link_color') . '" id="cs_link_color" name="cs_link_color"> Hover Color<input type="colorpicker" class="form-control" value="' . qa_opt('cs_link_hover_color') . '" id="cs_link_hover_color" name="cs_link_hover_color"> </td> </tr> <tr> <th class="qa-form-tall-label"> Question Link color </th> <td class="qa-form-tall-label"> Link Color<input type="colorpicker" class="form-control" value="' . qa_opt('cs_q_link_color') . '" id="cs_q_link_color" name="cs_q_link_color"> Hover Color<input type="colorpicker" class="form-control" value="' . qa_opt('cs_q_link_hover_color') . '" id="cs_q_link_hover_color" name="cs_q_link_hover_color"> </td> </tr> <tr> <th class="qa-form-tall-label"> Navigation Link color </th> <td class="qa-form-tall-label"> Text Color<input type="colorpicker" class="form-control" value="' . qa_opt('cs_nav_link_color') . '" id="cs_nav_link_color" name="cs_nav_link_color"> Hover Color<input type="colorpicker" class="form-control" value="' . qa_opt('cs_nav_link_color_hover') . '" id="cs_nav_link_color_hover" name="cs_nav_link_color_hover"> </td> </tr> <tr> <th class="qa-form-tall-label"> Sub Navigation Link color </th> <td class="qa-form-tall-label"> Text Color<input type="colorpicker" class="form-control" value="' . qa_opt('cs_subnav_link_color') . '" id="cs_subnav_link_color" name="cs_subnav_link_color"> Hover Color<input type="colorpicker" class="form-control" value="' . qa_opt('cs_subnav_link_color_hover') . '" id="cs_subnav_link_color_hover" name="cs_subnav_link_color_hover"> </td> </tr> <tr> <th class="qa-form-tall-label"> Highlight Text color </th> <td class="qa-form-tall-label"> <input type="colorpicker" class="form-control" value="' . qa_opt('cs_highlight_color') . '" id="cs_highlight_color" name="cs_highlight_color"> </td> </tr> <tr> <th class="qa-form-tall-label"> Highlight background color </th> <td class="qa-form-tall-label"> <input type="colorpicker" class="form-control" value="' . qa_opt('cs_highlight_bg_color') . '" id="cs_highlight_bg_color" name="cs_highlight_bg_color"> </td> </tr> </tbody> </table> <h3>Background color of questions</h3> <table class="qa-form-tall-table options-table"> <tbody> <tr> <th class="qa-form-tall-label"> Open Questions <span class="description">Color Open Questions in question lists</span> </th> <td class="qa-form-tall-label"> <div class="on-off-checkbox-container"> <input type="checkbox" class="on-off-checkbox" value="1"' . (qa_opt('cs_styling_open_question') ? ' checked=""' : '') . ' id="cs_styling_open_question" name="cs_styling_open_question"> <label for="cs_styling_open_question"> </label> </div> </td> </tr> <tr> <th class="qa-form-tall-label"> Closed Questions <span class="description">Color Closed Questions in question lists</span> </th> <td class="qa-form-tall-label"> <div class="on-off-checkbox-container"> <input type="checkbox" class="on-off-checkbox" value="1"' . (qa_opt('cs_styling_closed_question') ? ' checked=""' : '') . ' id="cs_styling_closed_question" name="cs_styling_closed_question"> <label for="cs_styling_closed_question"> </label> </div> </td> </tr> <tr> <th class="qa-form-tall-label"> Resolved Questions <span class="description">Color Resolved Questions in question lists</span> </th> <td class="qa-form-tall-label"> <div class="on-off-checkbox-container"> <input type="checkbox" class="on-off-checkbox" value="1"' . (qa_opt('cs_styling_solved_question') ? ' checked=""' : '') . ' id="cs_styling_solved_question" name="cs_styling_solved_question"> <label for="cs_styling_solved_question"> </label> </div> </td> </tr> <tr> <th class="qa-form-tall-label"> Duplicate Questions <span class="description">Color Duplicate Questions in question lists</span> </th> <td class="qa-form-tall-label"> <div class="on-off-checkbox-container"> <input type="checkbox" class="on-off-checkbox" value="1"' . (qa_opt('cs_styling_duplicate_question') ? ' checked=""' : '') . ' id="cs_styling_duplicate_question" name="cs_styling_duplicate_question"> <label for="cs_styling_duplicate_question"> </label> </div> </td> </tr> </tbody> <tbody> <tr> <th class="qa-form-tall-label"> Ask button background <span class="description">ADD DETAIL.</span> </th> <td class="qa-form-tall-label"> <input type="colorpicker" class="form-control" value="' . qa_opt('cs_ask_btn_bg') . '" id="cs_ask_btn_bg" name="cs_ask_btn_bg"> </td> </tr> </tbody> </table> </div> <div class="qa-part-form-tc-typo"> <table class="qa-form-tall-table options-table"> <tbody> <tr> <th class="qa-form-tall-label"> Body </th> <td class="qa-form-tall-label"> <select data-placeholder="Choose a font" class="chosen-select font-family" data-font-option-type="body" name="typo_option[body][family]" id="typo_family">' . $this->get_font_options(qa_opt('typo_options_family_body')) . '</select> <select data-placeholder="font style" id="typo_style" name="typo_option[body][style]" class="chosen-select font-style" data-font-option-type="body"> ' . $this->get_font_style_options(qa_opt('typo_options_family_body'), qa_opt('typo_options_style_body')) . ' </select> <div class="input-group font-input" title="Font Size"> <span class="input-group-addon">Font Size</span> <input value="' . qa_opt('typo_options_size_body') . '" id="typo_size" name="typo_option[body][size]" type="text" class="form-control font-size" data-font-option-type="body"> <span class="input-group-addon">px</span> </div> <div class="input-group font-input" title="Line Height" > <span class="input-group-addon">Line Height</span> <input value="' . qa_opt('typo_options_linehight_body') . '" id="typo_lineheight" name="typo_option[body][linehight]" type="text" class="form-control font-linehight" data-font-option-type="body"> <span class="input-group-addon">px</span> </div> <select data-placeholder="Font Backup" name="typo_option[body][backup]" id="typo_backup" class="chosen-select font-family-backup" data-font-option-type="body">' . $this->get_normal_font_options(qa_opt('typo_options_backup_body')) . '</select> <span class="font-demo">The quick brown fox jumps over the lazy dog.</span> </td> </tr> <tr> <th class="qa-form-tall-label"> H1 </th> <td class="qa-form-tall-label"> <select data-placeholder="Choose a font" class="chosen-select font-family" data-font-option-type="h1" name="typo_option[h1][family]" id="typo_family">' . $this->get_font_options(qa_opt('typo_options_family_h1')) . '</select> <select data-placeholder="font style" id="typo_style" name="typo_option[h1][style]" class="chosen-select font-style" data-font-option-type="h1"> ' . $this->get_font_style_options(qa_opt('typo_options_family_h1'), qa_opt('typo_options_style_h1')) . ' </select> <div class="input-group font-input" title="Font Size"> <span class="input-group-addon">Font Size</span> <input value="' . qa_opt('typo_options_size_h1') . '" id="typo_size" name="typo_option[h1][size]" type="text" class="form-control font-size" data-font-option-type="h1"> <span class="input-group-addon">px</span> </div> <div class="input-group font-input" title="Line Height" > <span class="input-group-addon">Line Height</span> <input value="' . qa_opt('typo_options_linehight_h1') . '" id="typo_lineheight" name="typo_option[h1][linehight]" type="text" class="form-control font-linehight" data-font-option-type="h1"> <span class="input-group-addon">px</span> </div> <select data-placeholder="Font Backup" name="typo_option[h1][backup]" id="typo_backup" class="chosen-select font-family-backup" data-font-option-type="h1">' . $this->get_normal_font_options(qa_opt('typo_options_backup_h1')) . '</select> <span class="font-demo"><h1>The quick brown fox jumps over the lazy dog.</h1></span> </td> </tr> <tr> <th class="qa-form-tall-label"> H2 </th> <td class="qa-form-tall-label"> <select data-placeholder="Choose a font" class="chosen-select font-family" data-font-option-type="h2" name="typo_option[h2][family]" id="typo_family">' . $this->get_font_options(qa_opt('typo_options_family_h2')) . '</select> <select data-placeholder="font style" id="typo_style" name="typo_option[h2][style]" class="chosen-select font-style" data-font-option-type="h2"> ' . $this->get_font_style_options(qa_opt('typo_options_family_h2'), qa_opt('typo_options_style_h2')) . ' </select> <div class="input-group font-input" title="Font Size"> <span class="input-group-addon">Font Size</span> <input value="' . qa_opt('typo_options_size_h2') . '" id="typo_size" name="typo_option[h2][size]" type="text" class="form-control font-size" data-font-option-type="h2"> <span class="input-group-addon">px</span> </div> <div class="input-group font-input" title="Line Height" > <span class="input-group-addon">Line Height</span> <input value="' . qa_opt('typo_options_linehight_h2') . '" id="typo_lineheight" name="typo_option[h2][linehight]" type="text" class="form-control font-linehight" data-font-option-type="h2"> <span class="input-group-addon">px</span> </div> <select data-placeholder="Font Backup" name="typo_option[h2][backup]" id="typo_backup" class="chosen-select font-family-backup" data-font-option-type="h2">' . $this->get_normal_font_options(qa_opt('typo_options_backup_h2')) . '</select> <span class="font-demo"><h2>The quick brown fox jumps over the lazy dog.</h2></span> </td> </tr> <tr> <th class="qa-form-tall-label"> H3 </th> <td class="qa-form-tall-label"> <select data-placeholder="Choose a font" class="chosen-select font-family" data-font-option-type="h3" name="typo_option[h3][family]" id="typo_family">' . $this->get_font_options(qa_opt('typo_options_family_h3')) . '</select> <select data-placeholder="font style" id="typo_style" name="typo_option[h3][style]" class="chosen-select font-style" data-font-option-type="h3"> ' . $this->get_font_style_options(qa_opt('typo_options_family_h3'), qa_opt('typo_options_style_h3')) . ' </select> <div class="input-group font-input" title="Font Size"> <span class="input-group-addon">Font Size</span> <input value="' . qa_opt('typo_options_size_h3') . '" id="typo_size" name="typo_option[h3][size]" type="text" class="form-control font-size" data-font-option-type="h3"> <span class="input-group-addon">px</span> </div> <div class="input-group font-input" title="Line Height" > <span class="input-group-addon">Line Height</span> <input value="' . qa_opt('typo_options_linehight_h3') . '" id="typo_lineheight" name="typo_option[h3][linehight]" type="text" class="form-control font-linehight" data-font-option-type="h3"> <span class="input-group-addon">px</span> </div> <select data-placeholder="Font Backup" name="typo_option[h3][backup]" id="typo_backup" class="chosen-select font-family-backup" data-font-option-type="h3">' . $this->get_normal_font_options(qa_opt('typo_options_backup_h3')) . '</select> <span class="font-demo"><h3>The quick brown fox jumps over the lazy dog.</h3></span> </td> </tr> <tr> <th class="qa-form-tall-label"> H4 </th> <td class="qa-form-tall-label"> <select data-placeholder="Choose a font" class="chosen-select font-family" data-font-option-type="h4" name="typo_option[h4][family]" id="typo_family">' . $this->get_font_options(qa_opt('typo_options_family_h4')) . '</select> <select data-placeholder="font style" id="typo_style" name="typo_option[h4][style]" class="chosen-select font-style" data-font-option-type="h4"> ' . $this->get_font_style_options(qa_opt('typo_options_family_h4'), qa_opt('typo_options_style_h4')) . ' </select> <div class="input-group font-input" title="Font Size"> <span class="input-group-addon">Font Size</span> <input value="' . qa_opt('typo_options_size_h4') . '" id="typo_size" name="typo_option[h4][size]" type="text" class="form-control font-size" data-font-option-type="h4"> <span class="input-group-addon">px</span> </div> <div class="input-group font-input" title="Line Height" > <span class="input-group-addon">Line Height</span> <input value="' . qa_opt('typo_options_linehight_h4') . '" id="typo_lineheight" name="typo_option[h4][linehight]" type="text" class="form-control font-linehight" data-font-option-type="h4"> <span class="input-group-addon">px</span> </div> <select data-placeholder="Font Backup" name="typo_option[h4][backup]" id="typo_backup" class="chosen-select font-family-backup" data-font-option-type="h4">' . $this->get_normal_font_options(qa_opt('typo_options_backup_h4')) . '</select> <span class="font-demo"><h4>The quick brown fox jumps over the lazy dog.</h4></span> </td> </tr> <tr> <th class="qa-form-tall-label"> h5 </th> <td class="qa-form-tall-label"> <select data-placeholder="Choose a font" class="chosen-select font-family" data-font-option-type="h5" name="typo_option[h5][family]" id="typo_family">' . $this->get_font_options(qa_opt('typo_options_family_h5')) . '</select> <select data-placeholder="font style" id="typo_style" name="typo_option[h5][style]" class="chosen-select font-style" data-font-option-type="h5"> ' . $this->get_font_style_options(qa_opt('typo_options_family_h5'), qa_opt('typo_options_style_h5')) . ' </select> <div class="input-group font-input" title="Font Size"> <span class="input-group-addon">Font Size</span> <input value="' . qa_opt('typo_options_size_h5') . '" id="typo_size" name="typo_option[h5][size]" type="text" class="form-control font-size" data-font-option-type="h5"> <span class="input-group-addon">px</span> </div> <div class="input-group font-input" title="Line Height" > <span class="input-group-addon">Line Height</span> <input value="' . qa_opt('typo_options_linehight_h5') . '" id="typo_lineheight" name="typo_option[h5][linehight]" type="text" class="form-control font-linehight" data-font-option-type="h5"> <span class="input-group-addon">px</span> </div> <select data-placeholder="Font Backup" name="typo_option[h5][backup]" id="typo_backup" class="chosen-select font-family-backup" data-font-option-type="h5">' . $this->get_normal_font_options(qa_opt('typo_options_backup_h5')) . '</select> <span class="font-demo"><h5>The quick brown fox jumps over the lazy dog.</h5></span> </td> </tr> <tr> <th class="qa-form-tall-label"> Paragraphs </th> <td class="qa-form-tall-label"> <select data-placeholder="Choose a font" class="chosen-select font-family" data-font-option-type="p" name="typo_option[p][family]" id="typo_family">' . $this->get_font_options(qa_opt('typo_options_family_p')) . '</select> <select data-placeholder="font style" id="typo_style" name="typo_option[p][style]" class="chosen-select font-style" data-font-option-type="p"> ' . $this->get_font_style_options(qa_opt('typo_options_family_p'), qa_opt('typo_options_style_p')) . ' </select> <div class="input-group font-input" title="Font Size"> <span class="input-group-addon">Font Size</span> <input value="' . qa_opt('typo_options_size_p') . '" id="typo_size" name="typo_option[p][size]" type="text" class="form-control font-size" data-font-option-type="p"> <span class="input-group-addon">px</span> </div> <div class="input-group font-input" title="Line Height" > <span class="input-group-addon">Line Height</span> <input value="' . qa_opt('typo_options_linehight_p') . '" id="typo_lineheight" name="typo_option[p][linehight]" type="text" class="form-control font-linehight" data-font-option-type="p"> <span class="input-group-addon">px</span> </div> <select data-placeholder="Font Backup" name="typo_option[p][backup]" id="typo_backup" class="chosen-select font-family-backup" data-font-option-type="p">' . $this->get_normal_font_options(qa_opt('typo_options_backup_p')) . '</select> <span class="font-demo"><p>The quick brown fox jumps over the lazy dog.</p></span> </td> </tr> <tr> <th class="qa-form-tall-label"> Span </th> <td class="qa-form-tall-label"> <select data-placeholder="Choose a font" class="chosen-select font-family" data-font-option-type="span" name="typo_option[span][family]" id="typo_family">' . $this->get_font_options(qa_opt('typo_options_family_span')) . '</select> <select data-placeholder="font style" id="typo_style" name="typo_option[span][style]" class="chosen-select font-style" data-font-option-type="span"> ' . $this->get_font_style_options(qa_opt('typo_options_family_span'), qa_opt('typo_options_style_span')) . ' </select> <div class="input-group font-input" title="Font Size"> <span class="input-group-addon">Font Size</span> <input value="' . qa_opt('typo_options_size_span') . '" id="typo_size" name="typo_option[span][size]" type="text" class="form-control font-size" data-font-option-type="span"> <span class="input-group-addon">px</span> </div> <div class="input-group font-input" title="Line Height" > <span class="input-group-addon">Line Height</span> <input value="' . qa_opt('typo_options_linehight_span') . '" id="typo_lineheight" name="typo_option[span][linehight]" type="text" class="form-control font-linehight" data-font-option-type="span"> <span class="input-group-addon">px</span> </div> <select data-placeholder="Font Backup" name="typo_option[span][backup]" id="typo_backup" class="chosen-select font-family-backup" data-font-option-type="span">' . $this->get_normal_font_options(qa_opt('typo_options_backup_span')) . '</select> <span class="font-demo"><span>The quick brown fox jumps over the lazy dog.</span></span> </td> </tr> <tr> <th class="qa-form-tall-label"> Quote </th> <td class="qa-form-tall-label"> <select data-placeholder="Choose a font" class="chosen-select font-family" data-font-option-type="quote" name="typo_option[quote][family]" id="typo_family">' . $this->get_font_options(qa_opt('typo_options_family_quote')) . '</select> <select data-placeholder="font style" id="typo_style" name="typo_option[quote][style]" class="chosen-select font-style" data-font-option-type="quote"> ' . $this->get_font_style_options(qa_opt('typo_options_family_quote'), qa_opt('typo_options_style_quote')) . ' </select> <div class="input-group font-input" title="Font Size"> <span class="input-group-addon">Font Size</span> <input value="' . qa_opt('typo_options_size_quote') . '" id="typo_size" name="typo_option[quote][size]" type="text" class="form-control font-size" data-font-option-type="quote"> <span class="input-group-addon">px</span> </div> <div class="input-group font-input" title="Line Height" > <span class="input-group-addon">Line Height</span> <input value="' . qa_opt('typo_options_linehight_quote') . '" id="typo_lineheight" name="typo_option[quote][linehight]" type="text" class="form-control font-linehight" data-font-option-type="quote"> <span class="input-group-addon">px</span> </div> <select data-placeholder="Font Backup" name="typo_option[quote][backup]" id="typo_backup" class="chosen-select font-family-backup" data-font-option-type="quote">' . $this->get_normal_font_options(qa_opt('typo_options_backup_quote')) . '</select> <span class="font-demo"><blockquote>The quick brown fox jumps over the lazy dog.</blockquote></span> </td> </tr> </tbody> <tr> <th class="qa-form-tall-label"> Question Title </th> <td class="qa-form-tall-label"> <select data-placeholder="Choose a font" class="chosen-select font-family" data-font-option-type="qtitle" name="typo_option[qtitle][family]" id="typo_family">' . $this->get_font_options(qa_opt('typo_options_family_qtitle')) . '</select> <select data-placeholder="font style" id="typo_style" name="typo_option[qtitle][style]" class="chosen-select font-style" data-font-option-type="qtitle"> ' . $this->get_font_style_options(qa_opt('typo_options_family_qtitle'), qa_opt('typo_options_style_qtitle')) . ' </select> <div class="input-group font-input" title="Font Size"> <span class="input-group-addon">Font Size</span> <input value="' . qa_opt('typo_options_size_qtitle') . '" id="typo_size" name="typo_option[qtitle][size]" type="text" class="form-control font-size" data-font-option-type="qtitle"> <span class="input-group-addon">px</span> </div> <div class="input-group font-input" title="Line Height" > <span class="input-group-addon">Line Height</span> <input value="' . qa_opt('typo_options_linehight_qtitle') . '" id="typo_lineheight" name="typo_option[qtitle][linehight]" type="text" class="form-control font-linehight" data-font-option-type="qtitle"> <span class="input-group-addon">px</span> </div> <select data-placeholder="Font Backup" name="typo_option[qtitle][backup]" id="typo_backup" class="chosen-select font-family-backup" data-font-option-type="qtitle">' . $this->get_normal_font_options(qa_opt('typo_options_backup_qtitle')) . '</select> <span class="font-demo"><h2 class="question-title">The quick brown fox jumps over the lazy dog.</h2></span> </td> </tr> <tr> <th class="qa-form-tall-label"> Question Title Link </th> <td class="qa-form-tall-label"> <select data-placeholder="Choose a font" class="chosen-select font-family" data-font-option-type="qtitlelink" name="typo_option[qtitlelink][family]" id="typo_family">' . $this->get_font_options(qa_opt('typo_options_family_qtitlelink')) . '</select> <select data-placeholder="font style" id="typo_style" name="typo_option[qtitlelink][style]" class="chosen-select font-style" data-font-option-type="qtitlelink"> ' . $this->get_font_style_options(qa_opt('typo_options_family_qtitlelink'), qa_opt('typo_options_style_qtitlelink')) . ' </select> <div class="input-group font-input" title="Font Size"> <span class="input-group-addon">Font Size</span> <input value="' . qa_opt('typo_options_size_qtitlelink') . '" id="typo_size" name="typo_option[qtitlelink][size]" type="text" class="form-control font-size" data-font-option-type="qtitlelink"> <span class="input-group-addon">px</span> </div> <div class="input-group font-input" title="Line Height" > <span class="input-group-addon">Line Height</span> <input value="' . qa_opt('typo_options_linehight_qtitlelink') . '" id="typo_lineheight" name="typo_option[qtitlelink][linehight]" type="text" class="form-control font-linehight" data-font-option-type="qtitlelink"> <span class="input-group-addon">px</span> </div> <select data-placeholder="Font Backup" name="typo_option[qtitlelink][backup]" id="typo_backup" class="chosen-select font-family-backup" data-font-option-type="qtitlelink">' . $this->get_normal_font_options(qa_opt('typo_options_backup_qtitlelink')) . '</select> <span class="font-demo"><div class="qa-q-item-title" style="font-size: inherit ! important; font-family: inherite ! important; font-style: inherit ! important; line-height: inherit ! important; font-weight: inherit ! important;"><a href="#" style="font-size: inherit ! important;">The quick brown fox jumps over the lazy dog.</a></div></span> </td> </tr> <tr> <th class="qa-form-tall-label"> Post Content </th> <td class="qa-form-tall-label"> <select data-placeholder="Choose a font" class="chosen-select font-family" data-font-option-type="pcontent" name="typo_option[pcontent][family]" id="typo_family">' . $this->get_font_options(qa_opt('typo_options_family_pcontent')) . '</select> <select data-placeholder="font style" id="typo_style" name="typo_option[pcontent][style]" class="chosen-select font-style" data-font-option-type="pcontent"> ' . $this->get_font_style_options(qa_opt('typo_options_family_pcontent'), qa_opt('typo_options_style_pcontent')) . ' </select> <div class="input-group font-input" title="Font Size"> <span class="input-group-addon">Font Size</span> <input value="' . qa_opt('typo_options_size_pcontent') . '" id="typo_size" name="typo_option[pcontent][size]" type="text" class="form-control font-size" data-font-option-type="pcontent"> <span class="input-group-addon">px</span> </div> <div class="input-group font-input" title="Line Height" > <span class="input-group-addon">Line Height</span> <input value="' . qa_opt('typo_options_linehight_pcontent') . '" id="typo_lineheight" name="typo_option[pcontent][linehight]" type="text" class="form-control font-linehight" data-font-option-type="pcontent"> <span class="input-group-addon">px</span> </div> <select data-placeholder="Font Backup" name="typo_option[pcontent][backup]" id="typo_backup" class="chosen-select font-family-backup" data-font-option-type="pcontent">' . $this->get_normal_font_options(qa_opt('typo_options_backup_pcontent')) . '</select> <span class="font-demo"><div class="entry-content">The quick brown fox jumps over the lazy dog.</div></span> </td> </tr> <tr> <th class="qa-form-tall-label"> Navigation Links </th> <td class="qa-form-tall-label"> <select data-placeholder="Choose a font" class="chosen-select font-family" data-font-option-type="mainnav" name="typo_option[mainnav][family]" id="typo_family">' . $this->get_font_options(qa_opt('typo_options_family_mainnav')) . '</select> <select data-placeholder="font style" id="typo_style" name="typo_option[mainnav][style]" class="chosen-select font-style" data-font-option-type="mainnav"> ' . $this->get_font_style_options(qa_opt('typo_options_family_mainnav'), qa_opt('typo_options_style_mainnav')) . ' </select> <div class="input-group font-input" title="Font Size"> <span class="input-group-addon">Font Size</span> <input value="' . qa_opt('typo_options_size_mainnav') . '" id="typo_size" name="typo_option[mainnav][size]" type="text" class="form-control font-size" data-font-option-type="mainnav"> <span class="input-group-addon">px</span> </div> <div class="input-group font-input" title="Line Height" > <span class="input-group-addon">Line Height</span> <input value="' . qa_opt('typo_options_linehight_mainnav') . '" id="typo_lineheight" name="typo_option[mainnav][linehight]" type="text" class="form-control font-linehight" data-font-option-type="mainnav"> <span class="input-group-addon">px</span> </div> <select data-placeholder="Font Backup" name="typo_option[mainnav][backup]" id="typo_backup" class="chosen-select font-family-backup" data-font-option-type="mainnav">' . $this->get_normal_font_options(qa_opt('typo_options_backup_mainnav')) . '</select> <span class="font-demo"> <div class="left-sidebar"> <ul class="qa-nav-main-list" style="font-style: inherit; font-weight: inherit;"> <li class="qa-nav-main-item qa-nav-main-questions"> <a class="icon-question qa-nav-main-link" href="#" style="font-style: inherit !important;font-size: inherit ! important;font-weight: inherit !important;">Questions</a> </li> </ul> </div> </span> </td> </tr> <tbody> </tbody> </table> </div> <div class="qa-part-form-tc-social"> <table class="qa-form-tall-table options-table"> <tbody> <tr> <th class="qa-form-tall-label"> Social Toolbar <span class="description">Enable social links in your site\'s header.</span> </th> <td class="qa-form-tall-label"> <div class="on-off-checkbox-container"> <input type="checkbox" class="on-off-checkbox" value="1"' . (qa_opt('cs_social_enable') ? ' checked=""' : '') . ' id="cs_social_enable" name="cs_social_enable"> <label for="cs_social_enable"></label> </div> </td> </tr> </tbody> <tbody> <tr> <th class="qa-form-tall-label"> Add New Social Links <span class="description">Add a new social link</span> </th> <td class="qa-form-tall-label text-center"> <button type="submit" id="add_social" name="add_social" class="qa-form-tall-button btn">Add Social Links</button> </td> </tr> </tbody> <tbody id="social_container"> ' . $social_content . ' </tbody> </table> </div> <div class="qa-part-form-tc-ads"> <h3>Advertisment in question list</h3> <table class="qa-form-tall-table options-table"> <tbody> <tr> <th class="qa-form-tall-label"> Advertisement in Lists <span class="description">Enable Advertisement in question lists</span> </th> <td class="qa-form-tall-label"> <div class="on-off-checkbox-container"> <input type="checkbox" class="on-off-checkbox" value="1"' . (qa_opt('cs_enable_adv_list') ? ' checked=""' : '') . ' id="cs_enable_adv_list" name="cs_enable_adv_list"> <label for="cs_enable_adv_list"></label> </div> </td> </tr> </tbody> <tbody id="ads_container" ' . (qa_opt('cs_enable_adv_list') ? '' : ' style="display:none;"') . '> <tr> <th class="qa-form-tall-label"> Add Advertisement <span class="description">Create advertisement with static or Google Adsense</span> </th> <td class="qa-form-tall-label text-center"> <button type="submit" id="add_adv" name="add_adv" class="qa-form-tall-button btn">Add Advertisement</button> <button type="submit" id="add_adsense" name="add_adsense" class="qa-form-tall-button btn">Add Google Adsense</button> </td> </tr> ' . $adv_content . ' </tbody> </table> <h3>Advertisement in question page</h3> <table class="qa-form-tall-table options-table"> <tbody><tr> <th class="qa-form-tall-label"> Under question title <span class="description">Advertisement below Question Title</span> </th> <td class="qa-form-tall-label"> <textarea class="form-control" cols="40" rows="5" name="cs_ads_below_question_title">' . base64_decode(qa_opt('cs_ads_below_question_title')) . '</textarea> </td> </tr> <tr> <th class="qa-form-tall-label"> After question content <span class="description">this advertisement will show up between Question & Answer</span> </th> <td class="qa-form-tall-label"> <textarea class="form-control" cols="40" rows="5" name="cs_ads_after_question_content">' . base64_decode(qa_opt('cs_ads_after_question_content')) . '</textarea> </td> </tr> </tbody> </table> </div> <div class="qa-part-form-tc-footer"> <table class="qa-form-tall-table options-table"> <tbody> <tr> <th class="qa-form-tall-label"> Footer Navigation Menu <span class="description">Add main navigation to footer too</span> </th> <td class="qa-form-tall-label"> <div class="on-off-checkbox-container"> <input type="checkbox" class="on-off-checkbox" value="1"' . (qa_opt('cs_enable_footer_nav') ? ' checked=""' : '') . ' id="cs_enable_footer_nav" name="cs_enable_footer_nav"> <label for="cs_enable_footer_nav"></label> </div> </td> </tr> </tbody> <tbody> <tr> <th class="qa-form-tall-label"> Text at right side of footer <span class="description">you can add links or images by entering html code</span> </th> <td class="qa-form-tall-label"> <input id="cs_footer_copyright" class="form-control" type="text" name="cs_footer_copyright" value="' . qa_opt('cs_footer_copyright') . '"> </td> </tr> </tbody> </table> </div> <div class="form-button-sticky-footer"> <div class="form-button-holder"> <input type="submit" class="qa-form-tall-button btn-primary" title="" value="Save Changes" name="cs_save_button"> <input type="submit" class="qa-form-tall-button" title="" value="Reset to Default" name="cs_reset_button"> </div> </div> </form> '; $this->content['custom'] = $cs_page; } qa_html_theme_base::doctype(); }