$value ) { $output[$key] = ""; } foreach( $input as $key => $value ) { if ( array_key_exists( $key, $option['options'] ) && $value ) { $output[$key] = "1"; } } } return $output; } add_filter( 'evolve_sanitize_multicheck', 'evolve_sanitize_multicheck', 10, 2 ); /* Color Picker */ add_filter( 'evolve_sanitize_color', 'evolve_sanitize_hex' ); /* Uploader */ function evolve_sanitize_upload( $input ) { $output = ''; $filetype = wp_check_filetype($input); if ( $filetype["ext"] ) { $output = $input; } return $output; } add_filter( 'evolve_sanitize_upload', 'evolve_sanitize_upload' ); /* Allowed Tags */ function evolve_sanitize_allowedtags($input) { global $allowedtags; $output = wpautop(wp_kses( $input, $allowedtags)); return $output; } add_filter( 'evolve_sanitize_info', 'evolve_sanitize_allowedtags' ); /* Allowed Post Tags */ function evolve_sanitize_allowedposttags($input) { global $allowedposttags; $output = wpautop(wp_kses( $input, $allowedposttags)); return $output; } add_filter( 'evolve_sanitize_info', 'evolve_sanitize_allowedposttags' ); /* Check that the key value sent is valid */ function evolve_sanitize_enum( $input, $option ) { $output = ''; if ( array_key_exists( $input, $option['options'] ) ) { $output = $input; } return $output; } /* Background */ function evolve_sanitize_background( $input ) { $output = wp_parse_args( $input, array( 'color' => '', 'image' => '', 'repeat' => __( 'repeat', 'evolve' ), 'position' => __( 'top center', 'evolve' ), 'attachment' => __( 'scroll', 'evolve' ), ) ); $output['color'] = apply_filters( 'evolve_sanitize_hex', $input['color'] ); $output['image'] = apply_filters( 'evolve_sanitize_upload', $input['image'] ); $output['repeat'] = apply_filters( 'evolve_background_repeat', $input['repeat'] ); $output['position'] = apply_filters( 'evolve_background_position', $input['position'] ); $output['attachment'] = apply_filters( 'evolve_background_attachment', $input['attachment'] ); return $output; } add_filter( 'evolve_sanitize_background', 'evolve_sanitize_background' ); function evolve_sanitize_background_repeat( $value ) { $recognized = evolve_recognized_background_repeat(); if ( array_key_exists( $value, $recognized ) ) { return $value; } return apply_filters( 'evolve_default_background_repeat', current( $recognized ) ); } add_filter( 'evolve_background_repeat', 'evolve_sanitize_background_repeat' ); function evolve_sanitize_background_position( $value ) { $recognized = evolve_recognized_background_position(); if ( array_key_exists( $value, $recognized ) ) { return $value; } return apply_filters( 'evolve_default_background_position', current( $recognized ) ); } add_filter( 'evolve_background_position', 'evolve_sanitize_background_position' ); function evolve_sanitize_background_attachment( $value ) { $recognized = evolve_recognized_background_attachment(); if ( array_key_exists( $value, $recognized ) ) { return $value; } return apply_filters( 'evolve_default_background_attachment', current( $recognized ) ); } add_filter( 'evolve_background_attachment', 'evolve_sanitize_background_attachment' ); /* Typography */ add_filter( 'evolve_sanitize_typography_js', 'evolve_sanitize_typography_js' ); function evolve_sanitize_typography( $input ) { if (isJSON($input)) { $output = get_object_vars((json_decode($input))); } else{ $output = wp_parse_args( $input, array( 'size' => '', 'face' => '', 'style' => '', 'color' => '' ) ); } $output['size'] = apply_filters( 'evolve_font_size', $output['size'] ); $output['face'] = apply_filters( 'evolve_font_face', $output['face'] ); $output['style'] = apply_filters( 'evolve_font_style', $output['style'] ); $output['color'] = apply_filters( 'evolve_color', $output['color'] ); //var_dump($output); return $output; } add_filter( 'evolve_sanitize_typography', 'evolve_sanitize_typography' ); function isJSON($string){ if (is_string($string)){ return is_object(json_decode($string));} else { return false;} } function evolve_sanitize_font_size( $value ) { $recognized = evolve_recognized_font_sizes(); $value = preg_replace('/px/','', $value); if ( in_array( (int) $value, $recognized ) ) { return (int) $value; } return (int) apply_filters( 'evolve_default_font_size', $recognized ); } add_filter( 'evolve_font_face', 'evolve_sanitize_font_face' ); function evolve_sanitize_font_style( $value ) { $recognized = evolve_recognized_font_styles(); if ( array_key_exists( $value, $recognized ) ) { return $value; } return apply_filters( 'evolve_default_font_style', current( $recognized ) ); } add_filter( 'evolve_font_style', 'evolve_sanitize_font_style' ); function evolve_sanitize_font_face( $value ) { $recognized = evolve_recognized_font_faces(); if ( array_key_exists( $value, $recognized ) ) { return $value; } return apply_filters( 'evolve_default_font_face', current( $recognized ) ); } add_filter( 'evolve_font_face', 'evolve_sanitize_font_face' ); /** * Get recognized background repeat settings * * @return array * */ function evolve_recognized_background_repeat() { $default = array( 'no-repeat' => __( 'No Repeat', 'evolve' ), 'repeat-x' => __( 'Repeat Horizontally', 'evolve' ), 'repeat-y' => __( 'Repeat Vertically', 'evolve' ), 'repeat' => __( 'Repeat All', 'evolve' ) ); return apply_filters( 'evolve_recognized_background_repeat', $default ); } /** * Get recognized background positions * * @return array * */ function evolve_recognized_background_position() { $default = array( 'top left' => __( 'Top Left', 'evolve' ), 'top center' => __( 'Top Center', 'evolve' ), 'top right' => __( 'Top Right', 'evolve' ), 'center left' => __( 'Middle Left', 'evolve' ), 'center center' => __( 'Middle Center', 'evolve' ), 'center right' => __( 'Middle Right', 'evolve' ), 'bottom left' => __( 'Bottom Left', 'evolve' ), 'bottom center' => __( 'Bottom Center', 'evolve' ), 'bottom right' => __( 'Bottom Right', 'evolve' ) ); return apply_filters( 'evolve_recognized_background_position', $default ); } /** * Get recognized background attachment * * @return array * */ function evolve_recognized_background_attachment() { $default = array( 'scroll' => __( 'Scroll Normally', 'evolve' ), 'fixed' => __( 'Fixed in Place', 'evolve' ) ); return apply_filters( 'evolve_recognized_background_attachment', $default ); } /** * Sanitize a color represented in hexidecimal notation. * * @param string Color in hexidecimal notation. "#" may or may not be prepended to the string. * @param string The value that this function should return if it cannot be recognized as a color. * @return string * */ function evolve_sanitize_hex( $hex, $default = '' ) { if ( evolve_validate_hex( $hex ) ) { return $hex; } return $default; } /** * Get recognized font sizes. * * Returns an indexed array of all recognized font sizes. * Values are integers and represent a range of sizes from * smallest to largest. * * @return array */ function evolve_recognized_font_sizes() { $sizes = range( 9, 71 ); $sizes = apply_filters( 'evolve_recognized_font_sizes', $sizes ); $sizes = array_map( 'absint', $sizes ); return $sizes; } /** * Get recognized font faces. * * Returns an array of all recognized font faces. * Keys are intended to be stored in the database * while values are ready for display in in html. * * @return array * */ function evolve_recognized_font_faces() { $default = array_merge( evolve_options_typography_get_os_fonts() , evolve_options_typography_get_google_fonts() ); //asort($default); return apply_filters( 'evolve_recognized_font_faces', $default ); } function evolve_recognized_font_faces1() { $default1 = evolve_options_typography_get_os_fonts(); //asort($default); return apply_filters( 'evolve_recognized_font_faces1', $default1 ); } function evolve_recognized_font_faces2() { $default2 = evolve_options_typography_get_google_fonts(); //asort($default); return apply_filters( 'evolve_recognized_font_faces2', $default2 ); } function evolve_options_typography_get_os_fonts() { // OS Font Defaults $os_faces = array( 'Arial, Helvetica, sans-serif' => 'Arial', 'Calibri, Candara, Arial, sans-serif' =>'Calibri*', 'Georgia, serif' => 'Georgia', 'Impact, Charcoal, sans-serif' => 'Impact', 'Lucida Sans Unicode, Lucida Grande, sans-serif' => 'Lucida', 'Myriad Pro, Myriad, "Liberation Sans", "Nimbus Sans L", "Helvetica Neue", Helvetica, Arial, sans-serif' => 'Myriad Pro*', 'Palatino Linotype, Book Antiqua, Palatino, serif' => 'Palatino Linotype', 'Tahoma, Geneva, sans-serif' => 'Tahoma', 'Times New Roman, Times, serif' => 'Times New Roman', 'Trebuchet MS, Helvetica, sans-serif' => 'Trebuchet MS', 'Verdana, Geneva, sans-serif' => 'Verdana' ); return $os_faces; } function evolve_options_typography_get_google_fonts() { // Google Font Defaults $google_faces = array( "Abel" => "Abel", "Abril Fatface" => "Abril Fatface", "Aclonica" => "Aclonica", "Acme" => "Acme", "Actor" => "Actor", "Adamina" => "Adamina", "Advent Pro" => "Advent Pro", "Aguafina Script" => "Aguafina Script", "Aladin" => "Aladin", "Aldrich" => "Aldrich", "Alegreya" => "Alegreya", "Alegreya SC" => "Alegreya SC", "Alex Brush" => "Alex Brush", "Alfa Slab One" => "Alfa Slab One", "Alice" => "Alice", "Alike" => "Alike", "Alike Angular" => "Alike Angular", "Allan" => "Allan", "Allerta" => "Allerta", "Allerta Stencil" => "Allerta Stencil", "Allura" => "Allura", "Almendra" => "Almendra", "Almendra SC" => "Almendra SC", "Amaranth" => "Amaranth", "Amatic SC" => "Amatic SC", "Amethysta" => "Amethysta", "Andada" => "Andada", "Andika" => "Andika", "Angkor" => "Angkor", "Annie Use Your Telescope" => "Annie Use Your Telescope", "Anonymous Pro" => "Anonymous Pro", "Antic" => "Antic", "Antic Didone" => "Antic Didone", "Antic Slab" => "Antic Slab", "Anton" => "Anton", "Arapey" => "Arapey", "Arbutus" => "Arbutus", "Architects Daughter" => "Architects Daughter", "Arimo" => "Arimo", "Arizonia" => "Arizonia", "Armata" => "Armata", "Artifika" => "Artifika", "Arvo" => "Arvo", "Asap" => "Asap", "Asset" => "Asset", "Astloch" => "Astloch", "Asul" => "Asul", "Atomic Age" => "Atomic Age", "Aubrey" => "Aubrey", "Audiowide" => "Audiowide", "Average" => "Average", "Averia Gruesa Libre" => "Averia Gruesa Libre", "Averia Libre" => "Averia Libre", "Averia Sans Libre" => "Averia Sans Libre", "Averia Serif Libre" => "Averia Serif Libre", "Bad Script" => "Bad Script", "Balthazar" => "Balthazar", "Bangers" => "Bangers", "Basic" => "Basic", "Battambang" => "Battambang", "Baumans" => "Baumans", "Bayon" => "Bayon", "Belgrano" => "Belgrano", "Belleza" => "Belleza", "Bentham" => "Bentham", "Berkshire Swash" => "Berkshire Swash", "Bevan" => "Bevan", "Bigshot One" => "Bigshot One", "Bilbo" => "Bilbo", "Bilbo Swash Caps" => "Bilbo Swash Caps", "Bitter" => "Bitter", "Black Ops One" => "Black Ops One", "Bokor" => "Bokor", "Bonbon" => "Bonbon", "Boogaloo" => "Boogaloo", "Bowlby One" => "Bowlby One", "Bowlby One SC" => "Bowlby One SC", "Brawler" => "Brawler", "Bree Serif" => "Bree Serif", "Bubblegum Sans" => "Bubblegum Sans", "Buda" => "Buda", "Buenard" => "Buenard", "Butcherman" => "Butcherman", "Butterfly Kids" => "Butterfly Kids", "Cabin" => "Cabin", "Cabin Condensed" => "Cabin Condensed", "Cabin Sketch" => "Cabin Sketch", "Caesar Dressing" => "Caesar Dressing", "Cagliostro" => "Cagliostro", "Calligraffitti" => "Calligraffitti", "Cambo" => "Cambo", "Candal" => "Candal", "Cantarell" => "Cantarell", "Cantata One" => "Cantata One", "Cardo" => "Cardo", "Carme" => "Carme", "Carter One" => "Carter One", "Caudex" => "Caudex", "Cedarville Cursive" => "Cedarville Cursive", "Ceviche One" => "Ceviche One", "Changa One" => "Changa One", "Chango" => "Chango", "Chau Philomene One" => "Chau Philomene One", "Chelsea Market" => "Chelsea Market", "Chenla" => "Chenla", "Cherry Cream Soda" => "Cherry Cream Soda", "Chewy" => "Chewy", "Chicle" => "Chicle", "Chivo" => "Chivo", "Coda" => "Coda", "Coda Caption" => "Coda Caption", "Codystar" => "Codystar", "Comfortaa" => "Comfortaa", "Coming Soon" => "Coming Soon", "Concert One" => "Concert One", "Condiment" => "Condiment", "Content" => "Content", "Contrail One" => "Contrail One", "Convergence" => "Convergence", "Cookie" => "Cookie", "Copse" => "Copse", "Corben" => "Corben", "Cousine" => "Cousine", "Coustard" => "Coustard", "Covered By Your Grace" => "Covered By Your Grace", "Crafty Girls" => "Crafty Girls", "Creepster" => "Creepster", "Crete Round" => "Crete Round", "Crimson Text" => "Crimson Text", "Crushed" => "Crushed", "Cuprum" => "Cuprum", "Cutive" => "Cutive", "Damion" => "Damion", "Dancing Script" => "Dancing Script", "Dangrek" => "Dangrek", "Dawning of a New Day" => "Dawning of a New Day", "Days One" => "Days One", "Delius" => "Delius", "Delius Swash Caps" => "Delius Swash Caps", "Delius Unicase" => "Delius Unicase", "Della Respira" => "Della Respira", "Devonshire" => "Devonshire", "Didact Gothic" => "Didact Gothic", "Diplomata" => "Diplomata", "Diplomata SC" => "Diplomata SC", "Doppio One" => "Doppio One", "Dorsa" => "Dorsa", "Dosis" => "Dosis", "Dr Sugiyama" => "Dr Sugiyama", "Droid Sans" => "Droid Sans", "Droid Sans Mono" => "Droid Sans Mono", "Droid Serif" => "Droid Serif", "Duru Sans" => "Duru Sans", "Dynalight" => "Dynalight", "EB Garamond" => "EB Garamond", "Eater" => "Eater", "Economica" => "Economica", "Electrolize" => "Electrolize", "Emblema One" => "Emblema One", "Emilys Candy" => "Emilys Candy", "Engagement" => "Engagement", "Enriqueta" => "Enriqueta", "Erica One" => "Erica One", "Esteban" => "Esteban", "Euphoria Script" => "Euphoria Script", "Ewert" => "Ewert", "Exo" => "Exo", "Expletus Sans" => "Expletus Sans", "Fanwood Text" => "Fanwood Text", "Fascinate" => "Fascinate", "Fascinate Inline" => "Fascinate Inline", "Federant" => "Federant", "Federo" => "Federo", "Felipa" => "Felipa", "Fjord One" => "Fjord One", "Flamenco" => "Flamenco", "Flavors" => "Flavors", "Fondamento" => "Fondamento", "Fontdiner Swanky" => "Fontdiner Swanky", "Forum" => "Forum", "Francois One" => "Francois One", "Fredericka the Great" => "Fredericka the Great", "Fredoka One" => "Fredoka One", "Freehand" => "Freehand", "Fresca" => "Fresca", "Frijole" => "Frijole", "Fugaz One" => "Fugaz One", "GFS Didot" => "GFS Didot", "GFS Neohellenic" => "GFS Neohellenic", "Galdeano" => "Galdeano", "Gentium Basic" => "Gentium Basic", "Gentium Book Basic" => "Gentium Book Basic", "Geo" => "Geo", "Geostar" => "Geostar", "Geostar Fill" => "Geostar Fill", "Germania One" => "Germania One", "Give You Glory" => "Give You Glory", "Glass Antiqua" => "Glass Antiqua", "Glegoo" => "Glegoo", "Gloria Hallelujah" => "Gloria Hallelujah", "Goblin One" => "Goblin One", "Gochi Hand" => "Gochi Hand", "Gorditas" => "Gorditas", "Goudy Bookletter 1911" => "Goudy Bookletter 1911", "Graduate" => "Graduate", "Gravitas One" => "Gravitas One", "Great Vibes" => "Great Vibes", "Gruppo" => "Gruppo", "Gudea" => "Gudea", "Habibi" => "Habibi", "Hammersmith One" => "Hammersmith One", "Handlee" => "Handlee", "Hanuman" => "Hanuman", "Happy Monkey" => "Happy Monkey", "Henny Penny" => "Henny Penny", "Herr Von Muellerhoff" => "Herr Von Muellerhoff", "Holtwood One SC" => "Holtwood One SC", "Homemade Apple" => "Homemade Apple", "Homenaje" => "Homenaje", "IM Fell DW Pica" => "IM Fell DW Pica", "IM Fell DW Pica SC" => "IM Fell DW Pica SC", "IM Fell Double Pica" => "IM Fell Double Pica", "IM Fell Double Pica SC" => "IM Fell Double Pica SC", "IM Fell English" => "IM Fell English", "IM Fell English SC" => "IM Fell English SC", "IM Fell French Canon" => "IM Fell French Canon", "IM Fell French Canon SC" => "IM Fell French Canon SC", "IM Fell Great Primer" => "IM Fell Great Primer", "IM Fell Great Primer SC" => "IM Fell Great Primer SC", "Iceberg" => "Iceberg", "Iceland" => "Iceland", "Imprima" => "Imprima", "Inconsolata" => "Inconsolata", "Inder" => "Inder", "Indie Flower" => "Indie Flower", "Inika" => "Inika", "Irish Grover" => "Irish Grover", "Istok Web" => "Istok Web", "Italiana" => "Italiana", "Italianno" => "Italianno", "Jim Nightshade" => "Jim Nightshade", "Jockey One" => "Jockey One", "Jolly Lodger" => "Jolly Lodger", "Josefin Sans" => "Josefin Sans", "Josefin Slab" => "Josefin Slab", "Judson" => "Judson", "Julee" => "Julee", "Junge" => "Junge", "Jura" => "Jura", "Just Another Hand" => "Just Another Hand", "Just Me Again Down Here" => "Just Me Again Down Here", "Kameron" => "Kameron", "Karla" => "Karla", "Kaushan Script" => "Kaushan Script", "Kelly Slab" => "Kelly Slab", "Kenia" => "Kenia", "Khmer" => "Khmer", "Knewave" => "Knewave", "Kotta One" => "Kotta One", "Koulen" => "Koulen", "Kranky" => "Kranky", "Kreon" => "Kreon", "Kristi" => "Kristi", "Krona One" => "Krona One", "La Belle Aurore" => "La Belle Aurore", "Lancelot" => "Lancelot", "Lato" => "Lato", "League Script" => "League Script", "Leckerli One" => "Leckerli One", "Ledger" => "Ledger", "Lekton" => "Lekton", "Lemon" => "Lemon", "Lilita One" => "Lilita One", "Limelight" => "Limelight", "Linden Hill" => "Linden Hill", "Lobster" => "Lobster", "Lobster Two" => "Lobster Two", "Londrina Outline" => "Londrina Outline", "Londrina Shadow" => "Londrina Shadow", "Londrina Sketch" => "Londrina Sketch", "Londrina Solid" => "Londrina Solid", "Lora" => "Lora", "Love Ya Like A Sister" => "Love Ya Like A Sister", "Loved by the King" => "Loved by the King", "Lovers Quarrel" => "Lovers Quarrel", "Luckiest Guy" => "Luckiest Guy", "Lusitana" => "Lusitana", "Lustria" => "Lustria", "Macondo" => "Macondo", "Macondo Swash Caps" => "Macondo Swash Caps", "Magra" => "Magra", "Maiden Orange" => "Maiden Orange", "Mako" => "Mako", "Marck Script" => "Marck Script", "Marko One" => "Marko One", "Marmelad" => "Marmelad", "Marvel" => "Marvel", "Mate" => "Mate", "Mate SC" => "Mate SC", "Maven Pro" => "Maven Pro", "Meddon" => "Meddon", "MedievalSharp" => "MedievalSharp", "Medula One" => "Medula One", "Megrim" => "Megrim", "Merienda One" => "Merienda One", "Merriweather" => "Merriweather", "Metal" => "Metal", "Metamorphous" => "Metamorphous", "Metrophobic" => "Metrophobic", "Michroma" => "Michroma", "Miltonian" => "Miltonian", "Miltonian Tattoo" => "Miltonian Tattoo", "Miniver" => "Miniver", "Miss Fajardose" => "Miss Fajardose", "Modern Antiqua" => "Modern Antiqua", "Molengo" => "Molengo", "Monofett" => "Monofett", "Monoton" => "Monoton", "Monsieur La Doulaise" => "Monsieur La Doulaise", "Montaga" => "Montaga", "Montez" => "Montez", "Montserrat" => "Montserrat", "Moul" => "Moul", "Moulpali" => "Moulpali", "Mountains of Christmas" => "Mountains of Christmas", "Mr Bedfort" => "Mr Bedfort", "Mr Dafoe" => "Mr Dafoe", "Mr De Haviland" => "Mr De Haviland", "Mrs Saint Delafield" => "Mrs Saint Delafield", "Mrs Sheppards" => "Mrs Sheppards", "Muli" => "Muli", "Mystery Quest" => "Mystery Quest", "Neucha" => "Neucha", "Neuton" => "Neuton", "News Cycle" => "News Cycle", "Niconne" => "Niconne", "Nixie One" => "Nixie One", "Nobile" => "Nobile", "Nokora" => "Nokora", "Norican" => "Norican", "Nosifer" => "Nosifer", "Nothing You Could Do" => "Nothing You Could Do", "Noticia Text" => "Noticia Text", "Nova Cut" => "Nova Cut", "Nova Flat" => "Nova Flat", "Nova Mono" => "Nova Mono", "Nova Oval" => "Nova Oval", "Nova Round" => "Nova Round", "Nova Script" => "Nova Script", "Nova Slim" => "Nova Slim", "Nova Square" => "Nova Square", "Numans" => "Numans", "Nunito" => "Nunito", "Odor Mean Chey" => "Odor Mean Chey", "Old Standard TT" => "Old Standard TT", "Oldenburg" => "Oldenburg", "Oleo Script" => "Oleo Script", "Open Sans" => "Open Sans", "Open Sans Condensed" => "Open Sans Condensed", "Orbitron" => "Orbitron", "Original Surfer" => "Original Surfer", "Oswald" => "Oswald", "Over the Rainbow" => "Over the Rainbow", "Overlock" => "Overlock", "Overlock SC" => "Overlock SC", "Ovo" => "Ovo", "Oxygen" => "Oxygen", "PT Mono" => "PT Mono", "PT Sans" => "PT Sans", "PT Sans Caption" => "PT Sans Caption", "PT Sans Narrow" => "PT Sans Narrow", "PT Serif" => "PT Serif", "PT Serif Caption" => "PT Serif Caption", "Pacifico" => "Pacifico", "Parisienne" => "Parisienne", "Passero One" => "Passero One", "Passion One" => "Passion One", "Patrick Hand" => "Patrick Hand", "Patua One" => "Patua One", "Paytone One" => "Paytone One", "Permanent Marker" => "Permanent Marker", "Petrona" => "Petrona", "Philosopher" => "Philosopher", "Piedra" => "Piedra", "Pinyon Script" => "Pinyon Script", "Plaster" => "Plaster", "Play" => "Play", "Playball" => "Playball", "Playfair Display" => "Playfair Display", "Podkova" => "Podkova", "Poiret One" => "Poiret One", "Poller One" => "Poller One", "Poly" => "Poly", "Pompiere" => "Pompiere", "Pontano Sans" => "Pontano Sans", "Port Lligat Sans" => "Port Lligat Sans", "Port Lligat Slab" => "Port Lligat Slab", "Prata" => "Prata", "Preahvihear" => "Preahvihear", "Press Start 2P" => "Press Start 2P", "Princess Sofia" => "Princess Sofia", "Prociono" => "Prociono", "Prosto One" => "Prosto One", "Puritan" => "Puritan", "Quantico" => "Quantico", "Quattrocento" => "Quattrocento", "Quattrocento Sans" => "Quattrocento Sans", "Questrial" => "Questrial", "Quicksand" => "Quicksand", "Qwigley" => "Qwigley", "Radley" => "Radley", "Raleway" => "Raleway", "Rammetto One" => "Rammetto One", "Rancho" => "Rancho", "Rationale" => "Rationale", "Redressed" => "Redressed", "Reenie Beanie" => "Reenie Beanie", "Revalia" => "Revalia", "Ribeye" => "Ribeye", "Ribeye Marrow" => "Ribeye Marrow", "Righteous" => "Righteous", "Roboto" => "Roboto", "Rochester" => "Rochester", "Rock Salt" => "Rock Salt", "Rokkitt" => "Rokkitt", "Ropa Sans" => "Ropa Sans", "Rosario" => "Rosario", "Rosarivo" => "Rosarivo", "Rouge Script" => "Rouge Script", "Ruda" => "Ruda", "Ruge Boogie" => "Ruge Boogie", "Ruluko" => "Ruluko", "Ruslan Display" => "Ruslan Display", "Russo One" => "Russo One", "Ruthie" => "Ruthie", "Sail" => "Sail", "Salsa" => "Salsa", "Sancreek" => "Sancreek", "Sansita One" => "Sansita One", "Sarina" => "Sarina", "Satisfy" => "Satisfy", "Schoolbell" => "Schoolbell", "Seaweed Script" => "Seaweed Script", "Sevillana" => "Sevillana", "Shadows Into Light" => "Shadows Into Light", "Shadows Into Light Two" => "Shadows Into Light Two", "Shanti" => "Shanti", "Share" => "Share", "Shojumaru" => "Shojumaru", "Short Stack" => "Short Stack", "Siemreap" => "Siemreap", "Sigmar One" => "Sigmar One", "Signika" => "Signika", "Signika Negative" => "Signika Negative", "Simonetta" => "Simonetta", "Sirin Stencil" => "Sirin Stencil", "Six Caps" => "Six Caps", "Slackey" => "Slackey", "Smokum" => "Smokum", "Smythe" => "Smythe", "Sniglet" => "Sniglet", "Snippet" => "Snippet", "Sofia" => "Sofia", "Sonsie One" => "Sonsie One", "Sorts Mill Goudy" => "Sorts Mill Goudy", "Special Elite" => "Special Elite", "Spicy Rice" => "Spicy Rice", "Spinnaker" => "Spinnaker", "Spirax" => "Spirax", "Squada One" => "Squada One", "Stardos Stencil" => "Stardos Stencil", "Stint Ultra Condensed" => "Stint Ultra Condensed", "Stint Ultra Expanded" => "Stint Ultra Expanded", "Stoke" => "Stoke", "Sue Ellen Francisco" => "Sue Ellen Francisco", "Sunshiney" => "Sunshiney", "Supermercado One" => "Supermercado One", "Suwannaphum" => "Suwannaphum", "Swanky and Moo Moo" => "Swanky and Moo Moo", "Syncopate" => "Syncopate", "Tangerine" => "Tangerine", "Taprom" => "Taprom", "Telex" => "Telex", "Tenor Sans" => "Tenor Sans", "The Girl Next Door" => "The Girl Next Door", "Tienne" => "Tienne", "Tinos" => "Tinos", "Titan One" => "Titan One", "Trade Winds" => "Trade Winds", "Trocchi" => "Trocchi", "Trochut" => "Trochut", "Trykker" => "Trykker", "Tulpen One" => "Tulpen One", "Ubuntu" => "Ubuntu", "Ubuntu Condensed" => "Ubuntu Condensed", "Ubuntu Mono" => "Ubuntu Mono", "Ultra" => "Ultra", "Uncial Antiqua" => "Uncial Antiqua", "UnifrakturCook" => "UnifrakturCook", "UnifrakturMaguntia" => "UnifrakturMaguntia", "Unkempt" => "Unkempt", "Unlock" => "Unlock", "Unna" => "Unna", "VT323" => "VT323", "Varela" => "Varela", "Varela Round" => "Varela Round", "Vast Shadow" => "Vast Shadow", "Vibur" => "Vibur", "Vidaloka" => "Vidaloka", "Viga" => "Viga", "Voces" => "Voces", "Volkhov" => "Volkhov", "Vollkorn" => "Vollkorn", "Voltaire" => "Voltaire", "Waiting for the Sunrise" => "Waiting for the Sunrise", "Wallpoet" => "Wallpoet", "Walter Turncoat" => "Walter Turncoat", "Wellfleet" => "Wellfleet", "Wire One" => "Wire One", "Yanone Kaffeesatz" => "Yanone Kaffeesatz", "Yellowtail" => "Yellowtail", "Yeseva One" => "Yeseva One", "Yesteryear" => "Yesteryear", "Zeyada" => "Zeyada" ); return $google_faces; } /** * Get recognized font styles. * * Returns an array of all recognized font styles. * Keys are intended to be stored in the database * while values are ready for display in in html. * * @return array * */ function evolve_recognized_font_styles() { $default = array( 'normal' => __( 'Normal', 'evolve' ), 'italic' => __( 'Italic', 'evolve' ), 'bold' => __( 'Bold', 'evolve' ), 'bold italic' => __( 'Bold Italic', 'evolve' ) ); return apply_filters( 'evolve_recognized_font_styles', $default ); } /** * Is a given string a color formatted in hexidecimal notation? * * @param string Color in hexidecimal notation. "#" may or may not be prepended to the string. * @return bool * */ function evolve_validate_hex( $hex ) { $hex = trim( $hex ); /* Strip recognized prefixes. */ if ( 0 === strpos( $hex, '#' ) ) { $hex = mb_substr( $hex, 1 ); } elseif ( 0 === strpos( $hex, '%23' ) ) { $hex = mb_substr( $hex, 3 ); } /* Regex match. */ if ( 0 === preg_match( '/^[0-9a-fA-F]{6}$/', $hex ) ) { return false; } else { return true; } } // Numerical Values function evolve_sanitize_numbers($input) { return intval($input); } // Text Fields function evolve_sanitize_text_field($input) { return sanitize_text_field( $input ); } /* function evolve_sanitize_select($input) { return sanitize_text_field( $input ); } */ // Fontawesome Values Pending function evolve_sanitize_fontawesome($input) { return sanitize_text_field( $input ); } // px/% values Pending function evolve_sanitize_pixel($input) { return sanitize_text_field( $input ); } // Select Choices function evolve_sanitize_choices( $input, $setting ) { global $wp_customize; // get correct setting id preg_match("^\[(.*)\]^",$setting->id,$settingidvalue); if(isset($settingidvalue[1])) { $correct_setting_id="evolve-theme_$settingidvalue[1]"; $control = $wp_customize->get_control($correct_setting_id); if ( array_key_exists( $input, $control->choices ) ) { return $input; } else { return $setting->default; } } }