diff --git a/functions.php b/functions.php index 0a631f4..c299b5e 100644 --- a/functions.php +++ b/functions.php @@ -30,9 +30,6 @@ require_once dirname( __FILE__ ) . '/includes/widget-areas/widget-areas.php'; // Plugin activation class. require_once dirname( __FILE__ ) . '/lib/class-tgm-plugin-activation.php'; -// Better Font Awesome Library. -require_once dirname( __FILE__ ) . '/lib/better-font-awesome-library/better-font-awesome-library.php'; - // Dev utility functions. require_once dirname( __FILE__ ) . '/includes/utilities/utilities.php'; @@ -52,7 +49,7 @@ function trestle_theme_setup() { // Child theme definitions (do not remove). define( 'TRESTLE_THEME_NAME', 'Trestle' ); define( 'TRESTLE_THEME_URL', 'http://demo.mightyminnow.com/theme/trestle/' ); - define( 'TRESTLE_THEME_VERSION', '2.1.0' ); + define( 'TRESTLE_THEME_VERSION', '2.2.1' ); define( 'TRESTLE_SETTINGS_FIELD', 'trestle-settings' ); // Setup default theme settings. diff --git a/includes/admin/admin.php b/includes/admin/admin.php index 6890870..57fdd88 100755 --- a/includes/admin/admin.php +++ b/includes/admin/admin.php @@ -18,20 +18,20 @@ function trestle_settings_defaults() { // Trestle default key/value pairs. $trestle_defaults = array( - 'layout' => 'solid', - 'logo_url' => '', - 'logo_url_mobile' => '', - 'favicon_url' => '', - 'nav_primary_location' => 'full', - 'mobile_nav_toggle' => 'small-icon', - 'search_in_nav' => '', - 'read_more_text' => __( 'Read More »', 'trestle' ), - 'revisions_number' => 3, - 'footer_widgets_number' => 3, - 'external_link_icons' => 0, - 'email_link_icons' => 0, - 'pdf_link_icons' => 0, - 'doc_link_icons' => 0, + 'layout' => 'solid', + 'logo_id' => '', + 'logo_id_mobile' => '', + 'favicon_url' => '', + 'nav_primary_location' => 'full', + 'mobile_nav_toggle' => 'small-icon', + 'search_in_nav' => '', + 'read_more_text' => __( 'Read More »', 'trestle' ), + 'revisions_number' => 3, + 'footer_widgets_number' => 3, + 'external_link_icons' => 0, + 'email_link_icons' => 0, + 'pdf_link_icons' => 0, + 'doc_link_icons' => 0, ); // Populate Trestle settings with default values if they don't yet exist. @@ -95,6 +95,31 @@ function trestle_admin_actions() { } +add_filter( 'tiny_mce_before_init', 'trestle_tiny_mce_before_init' ); +/** + * Add custom classes to the body of TinyMCE previews. + * + * @since 2.2.0 + */ +function trestle_tiny_mce_before_init( $init_array ) { + + global $post; + + if ( $post ) { + + // Custom post types always use 'post', so we only need to handle pages. + $post_type = ( 'page' == $post->post_type ) ? 'page' : 'post'; + + $init_array['body_class'] .= sprintf( ' %s-id-%s', + $post_type, + $post->ID + ); + + } + + return $init_array; +} + add_action( 'tgmpa_register', 'trestle_register_required_plugins' ); /** * Loads required & recommended plugins. @@ -159,12 +184,6 @@ function trestle_register_required_plugins() { 'required' => false, ), - array( - 'name' => 'My Page Order', - 'slug' => 'my-page-order', - 'required' => false, - ), - array( 'name' => 'Post Thumbnail Editor', 'slug' => 'post-thumbnail-editor', @@ -183,6 +202,12 @@ function trestle_register_required_plugins() { 'required' => false, ), + array( + 'name' => 'RICG Responsive Images', + 'slug' => 'ricg-responsive-images', + 'required' => false, + ), + array( 'name' => 'Widget Context', 'slug' => 'widget-context', diff --git a/includes/admin/customizer.php b/includes/admin/customizer.php index 3416945..4e8b69b 100755 --- a/includes/admin/customizer.php +++ b/includes/admin/customizer.php @@ -25,8 +25,8 @@ function trestle_customizer_controls( $wp_customize ) { $wp_customize->add_section( 'trestle_settings_section', array( - 'title' => __( 'Trestle Settings', 'trestle' ), - 'priority' => 160, + 'title' => __( 'Trestle Settings', 'trestle' ), + 'priority' => 160, ) ); @@ -34,65 +34,67 @@ function trestle_customizer_controls( $wp_customize ) { $wp_customize->add_setting( 'trestle-settings[layout]', array( - 'default' => trestle_get_option( 'layout' ), - 'type' => 'option', - 'capability' => 'edit_theme_options', + 'default' => trestle_get_option( 'layout' ), + 'type' => 'option', + 'capability' => 'edit_theme_options', ) ); $wp_customize->add_control( 'trestle_layout_control', array( - 'section' => 'trestle_settings_section', - 'settings' => 'trestle-settings[layout]', - 'label' => __( 'Layout', 'trestle' ), - 'type' => 'radio', - 'choices' => array( - 'bubble' => __( 'Bubble', 'trestle' ), - 'solid' => __( 'Solid', 'trestle' ), + 'section' => 'trestle_settings_section', + 'settings' => 'trestle-settings[layout]', + 'label' => __( 'Layout', 'trestle' ), + 'type' => 'radio', + 'choices' => array( + 'bubble' => __( 'Bubble', 'trestle' ), + 'solid' => __( 'Solid', 'trestle' ), ) ) ); // Upload a logo. $wp_customize->add_setting( - 'trestle-settings[logo_url]', + 'trestle-settings[logo_id]', array( - 'default' => trestle_get_option( 'logo_url' ), - 'type' => 'option', - 'capability' => 'edit_theme_options', - 'sanitize_callback' => 'esc_url_raw', + 'default' => trestle_get_option( 'logo_id' ), + 'type' => 'option', + 'capability' => 'edit_theme_options', + 'sanitize_callback' => 'absint', ) ); $wp_customize->add_control( - new WP_Customize_Image_Control( + new WP_Customize_Media_Control( $wp_customize, 'trestle_logo_control', array( - 'label' => __( 'Upload a logo', 'trestle' ), - 'section' => 'trestle_settings_section', - 'settings' => 'trestle-settings[logo_url]', + 'label' => __( 'Upload a logo', 'trestle' ), + 'section' => 'trestle_settings_section', + 'settings' => 'trestle-settings[logo_id]', + 'mime_type' => 'image', ) ) ); // Upload a mobile logo. $wp_customize->add_setting( - 'trestle-settings[logo_url_mobile]', + 'trestle-settings[logo_id_mobile]', array( - 'default' => trestle_get_option( 'logo_url_mobile' ), - 'type' => 'option', - 'capability' => 'edit_theme_options', - 'sanitize_callback' => 'esc_url_raw', + 'default' => trestle_get_option( 'logo_id_mobile' ), + 'type' => 'option', + 'capability' => 'edit_theme_options', + 'sanitize_callback' => 'absint', ) ); $wp_customize->add_control( - new WP_Customize_Image_Control( + new WP_Customize_Media_Control( $wp_customize, 'trestle_mobile_logo_control', array( - 'label' => __( 'Upload a mobile logo', 'trestle' ), - 'section' => 'trestle_settings_section', - 'settings' => 'trestle-settings[logo_url_mobile]', + 'label' => __( 'Upload a mobile logo', 'trestle' ), + 'section' => 'trestle_settings_section', + 'settings' => 'trestle-settings[logo_id_mobile]', + 'mime_type' => 'image', ) ) ); @@ -101,10 +103,10 @@ function trestle_customizer_controls( $wp_customize ) { $wp_customize->add_setting( 'trestle-settings[favicon_url]', array( - 'default' => trestle_get_option( 'favicon_url' ), - 'type' => 'option', - 'capability' => 'edit_theme_options', - 'sanitize_callback' => 'esc_url_raw', + 'default' => trestle_get_option( 'favicon_url' ), + 'type' => 'option', + 'capability' => 'edit_theme_options', + 'sanitize_callback' => 'esc_url_raw', ) ); $wp_customize->add_control( @@ -112,9 +114,9 @@ function trestle_customizer_controls( $wp_customize ) { $wp_customize, 'trestle_favicon_control', array( - 'label' => __( 'Upload a favicon', 'trestle' ), - 'section' => 'trestle_settings_section', - 'settings' => 'trestle-settings[favicon_url]', + 'label' => __( 'Upload a favicon', 'trestle' ), + 'section' => 'trestle_settings_section', + 'settings' => 'trestle-settings[favicon_url]', ) ) ); @@ -123,21 +125,21 @@ function trestle_customizer_controls( $wp_customize ) { $wp_customize->add_setting( 'trestle-settings[nav_primary_location]', array( - 'default' => trestle_get_option( 'nav_primary_location' ), - 'type' => 'option', - 'capability' => 'edit_theme_options', + 'default' => trestle_get_option( 'nav_primary_location' ), + 'type' => 'option', + 'capability' => 'edit_theme_options', ) ); $wp_customize->add_control( 'trestle_nav_primary_location_control', array( - 'section' => 'trestle_settings_section', - 'settings' => 'trestle-settings[nav_primary_location]', - 'label' => __( 'Menu style', 'trestle' ), - 'type' => 'select', - 'choices' => array( - 'full' => __( 'Full Width', 'trestle' ), - 'header' => __( 'Header Right', 'trestle' ), + 'section' => 'trestle_settings_section', + 'settings' => 'trestle-settings[nav_primary_location]', + 'label' => __( 'Menu style', 'trestle' ), + 'type' => 'select', + 'choices' => array( + 'full' => __( 'Full Width', 'trestle' ), + 'header' => __( 'Header Right', 'trestle' ), ) ) ); @@ -146,9 +148,9 @@ function trestle_customizer_controls( $wp_customize ) { $wp_customize->add_setting( 'trestle-settings[mobile_nav_toggle]', array( - 'default' => trestle_get_option( 'mobile_nav_toggle' ), - 'type' => 'option', - 'capability' => 'edit_theme_options', + 'default' => trestle_get_option( 'mobile_nav_toggle' ), + 'type' => 'option', + 'capability' => 'edit_theme_options', ) ); $wp_customize->add_control( @@ -159,8 +161,8 @@ function trestle_customizer_controls( $wp_customize ) { 'label' => __( 'Mobile Menu Toggle', 'trestle' ), 'type' => 'select', 'choices' => array( - 'small-icon' => __( 'Small Icon', 'trestle' ), - 'big-button' => __( 'Big Button', 'trestle' ), + 'small-icon' => __( 'Small Icon', 'trestle' ), + 'big-button' => __( 'Big Button', 'trestle' ), ) ) ); @@ -169,9 +171,9 @@ function trestle_customizer_controls( $wp_customize ) { $wp_customize->add_setting( 'trestle-settings[search_in_nav]', array( - 'default' => trestle_get_option( 'search_in_nav' ), - 'type' => 'option', - 'capability' => 'edit_theme_options', + 'default' => trestle_get_option( 'search_in_nav' ), + 'type' => 'option', + 'capability' => 'edit_theme_options', ) ); $wp_customize->add_control( @@ -180,7 +182,7 @@ function trestle_customizer_controls( $wp_customize ) { 'section' => 'trestle_settings_section', 'settings' => 'trestle-settings[search_in_nav]', 'label' => __( 'Add search to mobile navigation', 'trestle' ), - 'type' => 'checkbox', + 'type' => 'checkbox', ) ); @@ -188,18 +190,18 @@ function trestle_customizer_controls( $wp_customize ) { $wp_customize->add_setting( 'trestle-settings[read_more_text]', array( - 'default' => trestle_get_option( 'read_more_text' ), - 'type' => 'option', - 'capability' => 'edit_theme_options', - 'sanitize_callback' => 'wp_kses_post', + 'default' => trestle_get_option( 'read_more_text' ), + 'type' => 'option', + 'capability' => 'edit_theme_options', + 'sanitize_callback' => 'wp_kses_post', ) ); $wp_customize->add_control( 'trestle_read_more_text_control', array( - 'section' => 'trestle_settings_section', - 'settings' => 'trestle-settings[read_more_text]', - 'label' => __( 'Custom read more link text', 'trestle' ), + 'section' => 'trestle_settings_section', + 'settings' => 'trestle-settings[read_more_text]', + 'label' => __( 'Custom read more link text', 'trestle' ), ) ); @@ -207,31 +209,32 @@ function trestle_customizer_controls( $wp_customize ) { $wp_customize->add_setting( 'trestle-settings[revisions_number]', array( - 'default' => trestle_get_option( 'revisions_number' ), - 'type' => 'option', - 'capability' => 'edit_theme_options', + 'default' => trestle_get_option( 'revisions_number' ), + 'type' => 'option', + 'capability' => 'edit_theme_options', + 'sanitize_callback' => 'absint', ) ); $wp_customize->add_control( 'trestle_revisions_number_control', array( - 'section' => 'trestle_settings_section', - 'settings' => 'trestle-settings[revisions_number]', - 'label' => __( 'Number of post revisions', 'trestle' ), - 'type' => 'select', - 'choices' => array( - '-1' => __( 'Unlimited', 'trestle' ), - '0' => '0', - '1' => '1', - '2' => '2', - '3' => '3', - '4' => '4', - '5' => '5', - '6' => '6', - '7' => '7', - '8' => '8', - '9' => '9', - '10' => '10', + 'section' => 'trestle_settings_section', + 'settings' => 'trestle-settings[revisions_number]', + 'label' => __( 'Number of post revisions', 'trestle' ), + 'type' => 'select', + 'choices' => array( + '-1' => __( 'Unlimited', 'trestle' ), + '0' => '0', + '1' => '1', + '2' => '2', + '3' => '3', + '4' => '4', + '5' => '5', + '6' => '6', + '7' => '7', + '8' => '8', + '9' => '9', + '10' => '10', ) ) ); @@ -240,26 +243,26 @@ function trestle_customizer_controls( $wp_customize ) { $wp_customize->add_setting( 'trestle-settings[footer_widgets_number]', array( - 'default' => trestle_get_option( 'footer_widgets_number' ), - 'type' => 'option', - 'capability' => 'edit_theme_options', + 'default' => trestle_get_option( 'footer_widgets_number' ), + 'type' => 'option', + 'capability' => 'edit_theme_options', ) ); $wp_customize->add_control( 'trestle_footer_widgets_number_control', array( - 'section' => 'trestle_settings_section', - 'settings' => 'trestle-settings[footer_widgets_number]', - 'label' => __( 'Number of footer widgets', 'trestle' ), - 'type' => 'select', - 'choices' => array( - '0' => '0', - '1' => '1', - '2' => '2', - '3' => '3', - '4' => '4', - '5' => '5', - '6' => '6', + 'section' => 'trestle_settings_section', + 'settings' => 'trestle-settings[footer_widgets_number]', + 'label' => __( 'Number of footer widgets', 'trestle' ), + 'type' => 'select', + 'choices' => array( + '0' => '0', + '1' => '1', + '2' => '2', + '3' => '3', + '4' => '4', + '5' => '5', + '6' => '6', ) ) ); @@ -268,17 +271,17 @@ function trestle_customizer_controls( $wp_customize ) { $wp_customize->add_setting( 'trestle-settings[link_icons_title]', array( - 'default' => '', - 'type' => 'option', + 'default' => '', + 'type' => 'option', ) ); $wp_customize->add_control( 'trestle_link_icons_title', array( - 'section' => 'trestle_settings_section', - 'settings' => 'trestle-settings[link_icons_title]', - 'label' => __( 'Icon links', 'trestle' ), - 'type' => 'hidden', + 'section' => 'trestle_settings_section', + 'settings' => 'trestle-settings[link_icons_title]', + 'label' => __( 'Icon links', 'trestle' ), + 'type' => 'hidden', ) ); @@ -286,18 +289,18 @@ function trestle_customizer_controls( $wp_customize ) { $wp_customize->add_setting( 'trestle-settings[external_link_icons]', array( - 'default' => trestle_get_option( 'external_link_icons' ), - 'type' => 'option', - 'capability' => 'edit_theme_options', + 'default' => trestle_get_option( 'external_link_icons' ), + 'type' => 'option', + 'capability' => 'edit_theme_options', ) ); $wp_customize->add_control( 'trestle_external_link_icons', array( - 'section' => 'trestle_settings_section', - 'settings' => 'trestle-settings[external_link_icons]', - 'label' => __( 'Add icons to external links', 'trestle' ), - 'type' => 'checkbox', + 'section' => 'trestle_settings_section', + 'settings' => 'trestle-settings[external_link_icons]', + 'label' => __( 'Add icons to external links', 'trestle' ), + 'type' => 'checkbox', ) ); @@ -305,18 +308,18 @@ function trestle_customizer_controls( $wp_customize ) { $wp_customize->add_setting( 'trestle-settings[email_link_icons]', array( - 'default' => trestle_get_option( 'email_link_icons' ), - 'type' => 'option', - 'capability' => 'edit_theme_options', + 'default' => trestle_get_option( 'email_link_icons' ), + 'type' => 'option', + 'capability' => 'edit_theme_options', ) ); $wp_customize->add_control( 'trestle_email_link_icons', array( - 'section' => 'trestle_settings_section', - 'settings' => 'trestle-settings[email_link_icons]', - 'label' => __( 'Add icons to email links', 'trestle' ), - 'type' => 'checkbox', + 'section' => 'trestle_settings_section', + 'settings' => 'trestle-settings[email_link_icons]', + 'label' => __( 'Add icons to email links', 'trestle' ), + 'type' => 'checkbox', ) ); @@ -324,18 +327,18 @@ function trestle_customizer_controls( $wp_customize ) { $wp_customize->add_setting( 'trestle-settings[pdf_link_icons]', array( - 'default' => trestle_get_option( 'pdf_link_icons' ), - 'type' => 'option', - 'capability' => 'edit_theme_options', + 'default' => trestle_get_option( 'pdf_link_icons' ), + 'type' => 'option', + 'capability' => 'edit_theme_options', ) ); $wp_customize->add_control( 'trestle_pdf_link_icons', array( - 'section' => 'trestle_settings_section', - 'settings' => 'trestle-settings[pdf_link_icons]', - 'label' => __( 'Add icons to .pdf links', 'trestle' ), - 'type' => 'checkbox', + 'section' => 'trestle_settings_section', + 'settings' => 'trestle-settings[pdf_link_icons]', + 'label' => __( 'Add icons to .pdf links', 'trestle' ), + 'type' => 'checkbox', ) ); @@ -343,18 +346,18 @@ function trestle_customizer_controls( $wp_customize ) { $wp_customize->add_setting( 'trestle-settings[doc_link_icons]', array( - 'default' => trestle_get_option( 'doc_link_icons' ), - 'type' => 'option', - 'capability' => 'edit_theme_options', + 'default' => trestle_get_option( 'doc_link_icons' ), + 'type' => 'option', + 'capability' => 'edit_theme_options', ) ); $wp_customize->add_control( 'trestle_doc_link_icons', array( - 'section' => 'trestle_settings_section', - 'settings' => 'trestle-settings[doc_link_icons]', - 'label' => __( 'Add icons to .doc links', 'trestle' ), - 'type' => 'checkbox', + 'section' => 'trestle_settings_section', + 'settings' => 'trestle-settings[doc_link_icons]', + 'label' => __( 'Add icons to .doc links', 'trestle' ), + 'type' => 'checkbox', ) ); diff --git a/includes/functions/theme-functions.php b/includes/functions/theme-functions.php index e5f8b21..ae967a7 100755 --- a/includes/functions/theme-functions.php +++ b/includes/functions/theme-functions.php @@ -29,6 +29,9 @@ function trestle_add_theme_support() { // Add support for footer widgets if specified in Trestle settings. add_theme_support( 'genesis-footer-widgets', trestle_get_option( 'footer_widgets_number' ) ); + //* Add Accessibility support + add_theme_support( 'genesis-accessibility', array( 'headings', 'drop-down-menu', 'search-form', 'skip-links', 'rems' ) ); + } add_action( 'after_setup_theme', 'trestle_remove_genesis_css_enqueue' ); @@ -55,6 +58,9 @@ add_action( 'init', 'trestle_load_bfa' ); */ function trestle_load_bfa() { + // Better Font Awesome Library + require_once trailingslashit( get_stylesheet_directory() ) . 'lib/better-font-awesome-library/better-font-awesome-library.php'; + // Set the library initialization args. $args = array( 'version' => 'latest', @@ -192,7 +198,7 @@ function trestle_body_classes( $classes ) { } // Add logo class. - if ( trestle_get_option( 'logo_url' ) || trestle_get_option( 'logo_url_mobile' ) ) { + if ( trestle_get_option( 'logo_id' ) || trestle_get_option( 'logo_id_mobile' ) ) { $classes[] = 'has-logo'; } @@ -213,46 +219,59 @@ add_filter( 'genesis_seo_title', 'trestle_do_logos', 10, 3 ); */ function trestle_do_logos( $title, $inside, $wrap ) { - $logo_url = trestle_get_option( 'logo_url' ); - $logo_url_mobile = trestle_get_option( 'logo_url_mobile' ); + $logo_id = trestle_get_option( 'logo_id' ); + $logo_id_mobile = trestle_get_option( 'logo_id_mobile' ); $logo_html = ''; // Regular logo. - if ( $logo_url ) { + if ( $logo_id ) { - // Default logo class. - $classes = array('logo-full'); + // Default logo classes. + $classes = array( + 'logo', + 'logo-full' + ); // If no mobile logo is specified, make regular logo act as mobile logo too. - if( ! $logo_url_mobile ) + if( ! $logo_id_mobile ) { $classes[] = 'show'; + } - $logo_html .= sprintf( '', - implode(' ', $classes), - esc_attr( get_bloginfo( 'name' ) ), - $logo_url + // Prepare the classes. + $logo_attr = array( + 'class' => implode( $classes, ' ' ), ); + + // Build the tag. + $logo_html .= wp_get_attachment_image( $logo_id, 'full', false, $logo_attr ); + } // Mobile logo. - if ( $logo_url_mobile ) { + if ( $logo_id_mobile ) { // Default mobile logo class. - $classes = array('logo-mobile'); + $classes = array( + 'logo', + 'logo-mobile' + ); // If no regular logo is specified, make mobile logo act as regular logo too. - if( ! $logo_url ) + if( ! $logo_id ) $classes[] = 'show'; - $logo_html .= sprintf( '', - implode(' ', $classes), - esc_attr( get_bloginfo( 'name' ) ), - $logo_url_mobile + // Prepare the classes. + $logo_attr = array( + 'class' => implode( $classes, ' ' ), ); + + // Build the tag. + $logo_html .= wp_get_attachment_image( $logo_id_mobile, 'full', false, $logo_attr ); + } if ( $logo_html ) { - $inside .= sprintf( '%s', + $inside .= sprintf( '%s', trailingslashit( home_url() ), esc_attr( get_bloginfo( 'name' ) ), $logo_html @@ -315,6 +334,26 @@ function trestle_custom_nav_extras( $nav_items, stdClass $menu_args ) { * Posts & Pages ===========================================*/ +add_filter( 'post_class', 'trestle_post_classes' ); +/** + * Add extra classes to posts in certain situations. + * + * @since 2.2.0 + * + * @param array $classes Post classes. + * @return array Updated post classes. + */ +function trestle_post_classes( $classes ) { + + // If post doesn't have a featured image. + if ( ! has_post_thumbnail() ) { + $classes[] = 'no-featured-image'; + } + + return $classes; + +} + add_filter( 'wp_revisions_to_keep', 'trestle_update_revisions_number', 10, 2 ); /** * Sets the number of post revisions. @@ -382,3 +421,68 @@ function trestle_read_more_link( $default_text ) { return $default_text; } } + + +/*=========================================== + * Helper Functions +===========================================*/ + +/** + * Check if image has specified image size. + * + * @since 2.2.0 + * + * @param int $image_id ID of image to check. + * @param string $image_size Slug of image size to check for. + * + * @return true|false Whether or not the image has the specified size generated. + */ +function trestle_image_has_size( $image_id, $image_size = null ) { + + global $_wp_additional_image_sizes; + + // Return with error if no image_size is specified. + if ( ! $image_size ) { + return new WP_Error( 'no_image_size_specified', __( 'Please specify an image size.', 'trestle' ) ); + } + + // Get the attributes for the specified image size. + $image_size_atts = $_wp_additional_image_sizes[ $image_size ]; + + // Get data for specified image ID and size. + $img_data = wp_get_attachment_image_src( $image_id, $image_size ); + + // Check if the dimensions match. + if ( $img_data[1] == $image_size_atts['width'] && $img_data[2] == $image_size_atts['height'] ) { + return true; + } + + return false; + +} + +/** + * Check if post is, or is a child of, a target post. + * + * @since 1.0.0 + * + * @param string $post_id Post ID to check. + * @param string $target_id Target post ID to check against. + * + * @return true|false + */ +function trestle_is_current_or_descendant_post( $post_id = '', $target_id = '' ) { + + // If the current post is the target post, return true. + if ( $post_id == $target_id ) { + return true; + } + + // If the current post is a descendant of the target post. + if ( in_array( $target_id, get_post_ancestors( $post_id ) ) ) { + return true; + } + + return false; + +} \ No newline at end of file diff --git a/includes/js/theme-jquery.js b/includes/js/theme-jquery.js index 36b190b..99fa49f 100755 --- a/includes/js/theme-jquery.js +++ b/includes/js/theme-jquery.js @@ -107,8 +107,8 @@ jQuery( document ).ready( function( $ ) { var openIcon = '-'; // Insert the icons into the nav where appropriate. - $( '.nav-primary' ).find( '.genesis-nav-menu .parent:not( .current-menu-item, .current_page_item, .current_page_parent, .current_page_ancestor) > a' ).after( '' + closedIcon + '' ); - $( '.nav-primary' ).find( '.genesis-nav-menu .parent.current-menu-item > a, .genesis-nav-menu .parent.current_page_item > a, .genesis-nav-menu .parent.current_page_parent > a, .genesis-nav-menu .parent.current_page_ancestor > a' ).after( '' + openIcon + '' ); + $( '.nav-primary' ).find( '.genesis-nav-menu .parent:not( [class*="current"] ) > a' ).after( '' + closedIcon + '' ); + $( '.nav-primary' ).find( '.genesis-nav-menu .parent[class*="current"] > a' ).after( '' + openIcon + '' ); // Mobile navigation expand/contract functionality. $( '.sub-icon' ).click( function( event ) { diff --git a/lib/better-font-awesome-library/README.md b/lib/better-font-awesome-library/README.md old mode 100644 new mode 100755 index fe57314..2185cdd --- a/lib/better-font-awesome-library/README.md +++ b/lib/better-font-awesome-library/README.md @@ -32,54 +32,50 @@ The Better Font Awesome Library contains a [Git submodule](http://git-scm.com/bo git clone --recursive https://github.com/MickeyKay/better-font-awesome-library.git ``` -Alternately, if you've already cloned the repo and need to add the submodules, you can run the following commands: +Alternately, if you've already cloned the repo and need to add the submodules, you can run the following command: ``` -// Initialize all submodules. -git submodule init - -// Pull in updated copies of all submodules. -git submodule update +// Initialize and update all submodules. +git submodule update --init --recursive ``` ## Usage ## 1. Copy the /better-font-awesome-library folder into your project. 2. Add the following code to your main plugin file or your theme's functions.php file. - ``` - // Include the main library file. Make sure to modify the path to match your directory structure. - require_once ( dirname( __FILE__ ) . '/better-font-awesome-library/better-font-awesome-library.php' ); - - add_action( 'plugins_loaded', 'my_prefix_load_bfa' ); + ```php + add_action( 'init', 'my_prefix_load_bfa' ); /** * Initialize the Better Font Awesome Library. * * (see usage notes below on proper hook priority) */ function my_prefix_load_bfa() { + + // Include the main library file. Make sure to modify the path to match your directory structure. + require_once ( dirname( __FILE__ ) . '/better-font-awesome-library/better-font-awesome-library.php' ); // Set the library initialization args (defaults shown). $args = array( - 'version' => 'latest', - 'minified' => true, - 'remove_existing_fa' => false, - 'load_styles' => true, - 'load_admin_styles' => true, - 'load_shortcode' => true, - 'load_tinymce_plugin' => true, + 'version' => 'latest', + 'minified' => true, + 'remove_existing_fa' => false, + 'load_styles' => true, + 'load_admin_styles' => true, + 'load_shortcode' => true, + 'load_tinymce_plugin' => true, ); // Initialize the Better Font Awesome Library. Better_Font_Awesome_Library::get_instance( $args ); - } ``` 3. If desired, use the [Better Font Awesome Library object](#the-better-font-awesome-library-object) to manually include Font Awesome CSS, output lists of available icons, create your own shortcodes, and much more. #### Usage Notes #### -The Better Font Awesome Library is designed to work in conjunction with the [Better Font Awesome](https://wordpress.org/plugins/better-font-awesome/) WordPress plugin. The plugin initializes this library (with its initialization args) on the `plugins_loaded` hook, priority `5`. When using the Better Font Awesome Library in your project, you have two options: +The Better Font Awesome Library is designed to work in conjunction with the [Better Font Awesome](https://wordpress.org/plugins/better-font-awesome/) WordPress plugin. The plugin initializes this library (with its initialization args) on the `init` hook, priority `5`. When using the Better Font Awesome Library in your project, you have two options: -1. Initialize later, to ensure that any Better Font Awesome plugin settings override yours. +1. Initialize later, to ensure that any Better Font Awesome plugin settings override yours (this is the default behavior, shown above by initializing the library on the `init` hook with default priority `10`. 1. Initialize earlier, to "take over" and prevent Better Font Awesome settings from having an effect. ## Initialization Parameters ($args) ## @@ -171,7 +167,7 @@ The object has the following public methods: (array) Returns all library errors, including API and CDN fetch failures. #### Example: #### -``` +```php // Initialize the library with custom args. Better_Font_Awesome_Library::get_instance( $args ); diff --git a/lib/better-font-awesome-library/better-font-awesome-library.php b/lib/better-font-awesome-library/better-font-awesome-library.php old mode 100644 new mode 100755 index 27c7b1c..ce1c09d --- a/lib/better-font-awesome-library/better-font-awesome-library.php +++ b/lib/better-font-awesome-library/better-font-awesome-library.php @@ -32,8 +32,8 @@ class Better_Font_Awesome_Library { /** * Better Font Awesome Library slug. * - * @since 1.0.0 - * + * @since 1.0.0 + * * @var string */ const SLUG = 'bfa'; @@ -42,25 +42,25 @@ class Better_Font_Awesome_Library { * Better Font Awesome Library version slug. * * @since 1.0.0 - * + * * @var string */ - const VERSION = '1.0.0'; + const VERSION = '1.4.0'; /** * jsDelivr API URL for Font Awesome version info. * * @since 1.0.0 - * + * * @var string */ const JSDELIVR_API_URL = 'http://api.jsdelivr.com/v1/jsdelivr/libraries/fontawesome/?fields=versions,lastversion'; - + /** * Initialization args. * - * @since 1.0.0 - * + * @since 1.0.0 + * * @var array */ private $args; @@ -69,7 +69,7 @@ class Better_Font_Awesome_Library { * Default args to use if any $arg isn't specified. * * @since 1.0.0 - * + * * @var array */ private $default_args = array( @@ -82,6 +82,15 @@ class Better_Font_Awesome_Library { 'load_tinymce_plugin' => true, ); + /** + * Root URL of the library. + * + * @since 1.0.4 + * + * @var string + */ + private $root_url; + /** * Args for wp_remote_get() calls. * @@ -90,14 +99,15 @@ class Better_Font_Awesome_Library { * @var array */ private $wp_remote_get_args = array( - 'timeout' => 10 + 'timeout' => 10, + 'sslverify' => false, ); /** * Array to hold the jsDelivr API data. * * @since 1.0.0 - * + * * @var string */ private $api_data = array(); @@ -106,7 +116,7 @@ class Better_Font_Awesome_Library { * Version of Font Awesome being used. * * @since 1.0.0 - * + * * @var string */ private $font_awesome_version; @@ -115,7 +125,7 @@ class Better_Font_Awesome_Library { * Font Awesome stylesheet URL. * * @since 1.0.0 - * + * * @var string */ private $stylesheet_url; @@ -124,7 +134,7 @@ class Better_Font_Awesome_Library { * Font Awesome CSS. * * @since 1.0.0 - * + * * @var string */ private $css; @@ -133,7 +143,7 @@ class Better_Font_Awesome_Library { * Data associated with the local fallback version of Font Awesome. * * @since 1.0.0 - * + * * @var string */ private $fallback_data = array( @@ -148,7 +158,7 @@ class Better_Font_Awesome_Library { * Array of available Font Awesome icon slugs. * * @since 1.0.0 - * + * * @var string */ private $icons = array(); @@ -157,7 +167,7 @@ class Better_Font_Awesome_Library { * Font Awesome prefix to be used ('icon' or 'fa'). * * @since 1.0.0 - * + * * @var string */ private $prefix; @@ -166,7 +176,7 @@ class Better_Font_Awesome_Library { * Array to track errors and wp_remote_get() failures. * * @since 1.0.0 - * + * * @var array */ private $errors = array(); @@ -189,7 +199,7 @@ class Better_Font_Awesome_Library { * @return Better_Font_Awesome_Library The BFAL object. */ public static function get_instance( $args = array() ) { - + // If the single instance hasn't been set, set it now. if ( null == self::$instance ) { self::$instance = new self( $args ); @@ -238,6 +248,12 @@ class Better_Font_Awesome_Library { // Get stylesheet and generate list of available icons in Font Awesome stylesheet. $this->setup_stylesheet_data(); + // Add Font Awesome and/or custom CSS to the editor. + $this->add_editor_styles(); + + // Output any necessary admin notices. + add_action( 'admin_notices', array( $this, 'do_admin_notice' ) ); + /** * Remove existing Font Awesome CSS and shortcodes if needed. * @@ -247,9 +263,9 @@ class Better_Font_Awesome_Library { * remove them. */ if ( $this->args['remove_existing_fa'] ) { - + add_action( 'wp_enqueue_scripts', array( $this, 'remove_font_awesome_css' ), 15 ); - add_action( 'init', array( $this, 'remove_icon_shortcode' ), 15 ); + add_action( 'init', array( $this, 'remove_icon_shortcode' ), 20 ); } @@ -278,24 +294,19 @@ class Better_Font_Awesome_Library { * Awesome CSS and shortcodes. */ if ( $this->args['load_shortcode'] || $this->args['load_tinymce_plugin'] ) { - add_action( 'init', array( $this, 'add_icon_shortcode' ), 15 ); + add_action( 'init', array( $this, 'add_icon_shortcode' ), 20 ); } - // Add Font Awesome and/or custom CSS to the editor. - add_action( 'init', array( $this, 'add_editor_styles' ) ); - // Load TinyMCE functionality. if ( $this->args['load_tinymce_plugin'] ) { - - add_action( 'admin_init', array( $this, 'add_tinymce_components' ) ); - add_action( 'admin_head', array( $this, 'output_admin_head_variables' ) ); - add_action( 'admin_enqueue_scripts', array( $this, 'register_custom_admin_css' ), 15 ); + + add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_admin_scripts' ) ); + + // Add shortcode insertion button. + add_action( 'media_buttons', array( $this, 'add_insert_shortcode_button' ), 99 ); } - // Output any necessary admin notices. - add_action( 'admin_notices', array( $this, 'do_admin_notice' ) ); - } /** @@ -355,7 +366,7 @@ class Better_Font_Awesome_Library { */ function setup_root_url() { - // Get BFA directory and theme root directory paths. + // Get BFA directory and theme root directory paths. $bfa_directory = dirname(__FILE__); $theme_directory = get_stylesheet_directory(); $plugin_dir = plugin_dir_url( __FILE__ ); @@ -383,8 +394,8 @@ class Better_Font_Awesome_Library { $this->root_url = trailingslashit( plugin_dir_url( __FILE__ ) ); - } - + } + } /** @@ -446,11 +457,11 @@ class Better_Font_Awesome_Library { private function fetch_api_data( $url ) { if ( false === ( $response = get_transient( self::SLUG . '-api-versions' ) ) ) { - + $response = wp_remote_get( $url, $this->wp_remote_get_args ); if ( 200 == wp_remote_retrieve_response_code( $response ) ) { - + // Decode the API data and grab the versions info. $json_data = json_decode( wp_remote_retrieve_body( $response ) ); $response = $json_data[0]; @@ -473,7 +484,7 @@ class Better_Font_Awesome_Library { $response = ''; } elseif ( isset( $response['response'] ) ) { // Check for 404 and other non-WP_ERROR codes - + $this->set_error( 'api', $response['response']['code'], $response['response']['message'] . " (URL: $url)" ); $response = ''; @@ -538,9 +549,9 @@ class Better_Font_Awesome_Library { $css_transient_latest_version = $this->get_css_transient_latest_version(); - if ( version_compare( $css_transient_latest_version, $this->fallback_data['version'], '>' ) ) { + if ( version_compare( $css_transient_latest_version, $this->fallback_data['version'], '>' ) ) { return $css_transient_latest_version; - } else { + } else { return $this->fallback_data['version']; } @@ -557,7 +568,7 @@ class Better_Font_Awesome_Library { private function get_css_transient_latest_version() { $transient_css_array = get_transient( self::SLUG . '-css' ); - + if ( ! empty( $transient_css_array ) ) { return max( array_keys( $transient_css_array ) ); } else { @@ -606,14 +617,14 @@ class Better_Font_Awesome_Library { * * @return string $response Font Awesome CSS, from either: * 1. transient, - * 2. wp_remote_get(), or + * 2. wp_remote_get(), or * 3. fallback CSS. */ private function get_css( $url, $version ) { - + // First try getting the transient CSS. $response = $this->get_transient_css( $version ); - + // Next, try fetching the CSS from the remote jsDelivr CDN. if ( ! $response ) { $response = $this->get_remote_css( $url, $version ); @@ -663,7 +674,7 @@ class Better_Font_Awesome_Library { * @return string Transient CSS if it exists, otherwise null. */ private function get_transient_css( $version ) { - + $transient_css_array = get_transient( self::SLUG . '-css' ); return isset( $transient_css_array[ $version ] ) ? $transient_css_array[ $version ] : ''; @@ -685,13 +696,13 @@ class Better_Font_Awesome_Library { // Get the remote Font Awesome CSS. $url = set_url_scheme( $url ); $response = wp_remote_get( $url, $this->wp_remote_get_args ); - + /** * If fetch was successful, return the remote CSS, and set the CSS * transient for this version. Otherwise, return a WP_Error object. */ if ( 200 == wp_remote_retrieve_response_code( $response ) ) { - + $response = wp_remote_retrieve_body( $response ); $this->set_css_transient( $version, $response ); @@ -723,7 +734,7 @@ class Better_Font_Awesome_Library { * Awesome version. */ $transient_css_array = get_transient( self::SLUG . '-css' ); - + // Set the new value for the specified Font Awesome version. $transient_css_array[ $version ] = $value; @@ -735,7 +746,7 @@ class Better_Font_Awesome_Library { * @param int Expiration for the CSS transient. */ $transient_expiration = apply_filters( 'bfa_css_transient_expiration', 30 * DAY_IN_SECONDS ); - + // Set the new CSS array transient. set_transient( self::SLUG . '-css', $transient_css_array, $transient_expiration ); @@ -762,7 +773,7 @@ class Better_Font_Awesome_Library { * @return array All available icon names (e.g. adjust, car, pencil). */ private function setup_icon_array( $css ) { - + $icons = array(); $hex_codes = array(); @@ -784,7 +795,7 @@ class Better_Font_Awesome_Library { * Filter the array of available icons. * * @since 1.0.0 - * + * * @param array $icons Array of all available icons. */ $icons = apply_filters( 'bfa_icon_list', $icons ); @@ -829,12 +840,12 @@ class Better_Font_Awesome_Library { * @since 1.0.0 */ public function remove_font_awesome_css() { - + global $wp_styles; // Loop through all registered styles and remove any that appear to be Font Awesome. foreach ( $wp_styles->registered as $script => $details ) { - + if ( false !== strpos( $script, 'fontawesome' ) || false !== strpos( $script, 'font-awesome' ) ) { wp_dequeue_style( $script ); } @@ -874,15 +885,15 @@ class Better_Font_Awesome_Library { * @return string $output Icon HTML (e.g. ). */ public function render_shortcode( $atts ) { - + extract( shortcode_atts( array( - 'name' => '', - 'class' => '', + 'name' => '', + 'class' => '', 'unprefixed_class' => '', - 'title' => '', /* For compatibility with other plugins */ - 'size' => '', /* For compatibility with other plugins */ - 'space' => '', - ), $atts ) + 'title' => '', /* For compatibility with other plugins */ + 'size' => '', /* For compatibility with other plugins */ + 'space' => '', + ), $atts ) ); /** @@ -898,19 +909,27 @@ class Better_Font_Awesome_Library { // This helps both: // 1. Incorrect shortcodes (when user includes full class name including prefix) // 2. Old shortcodes from other plugins that required prefixes - + /** - * Strip 'icon-' and 'fa-' from $name. - * + * Strip 'icon-' and 'fa-' from the BEGINNING of $name. + * * This corrects for: * 1. Incorrect shortcodes (when user includes full class name including prefix) * 2. Old shortcodes from other plugins that required prefixes */ - $name = str_replace( 'icon-', '', $name ); + $prefixes = array( 'icon-', 'fa-' ); + foreach ( $prefixes as $prefix ) { + + if ( substr( $name, 0, strlen( $prefix ) ) == $prefix ) { + $name = substr( $name, strlen( $prefix ) ); + } + + } + $name = str_replace( 'fa-', '', $name ); - // Add the version-specific prefix back on to $name. - $icon_name = $this->prefix . '-' . $name; + // Add the version-specific prefix back on to $name, if it exists. + $icon_name = $this->prefix ? $this->prefix . '-' . $name : $name; // Remove "icon-" and "fa-" from the icon class. $class = str_replace( 'icon-', '', $class ); @@ -921,7 +940,11 @@ class Better_Font_Awesome_Library { $class = preg_replace( '/\s{3,}/', ' ', $class ); // Add the version-specific prefix back on to each class. - $class = $class ? ' ' . $this->prefix . '-' . str_replace( ' ', ' ' . $this->prefix . '-', $class ) : ''; + $class_array = explode( ' ', $class ); + foreach ( $class_array as $index => $class ) { + $class_array[ $index ] = $this->prefix ? $this->prefix . '-' . $class : $class; + } + $class = implode( ' ', $class_array ); // Add unprefixed classes. $class .= $unprefixed_class ? ' ' . $unprefixed_class : ''; @@ -936,9 +959,11 @@ class Better_Font_Awesome_Library { $class = apply_filters( 'bfa_icon_class', $class, $name ); // Generate the HTML icon element output. - $output = sprintf( '%s', + $output = sprintf( '%s', $this->prefix, - $icon_name . $class . $size, + $icon_name, + $class, + $size, $title, $space ); @@ -973,89 +998,54 @@ class Better_Font_Awesome_Library { add_editor_style( $this->stylesheet_url ); } - /** - * Add TinyMCE button functionality. - * - * @since 1.0.0 - */ - function add_tinymce_components() { - - if ( ! current_user_can( 'edit_posts' ) && ! current_user_can( 'edit_pages' ) ) { - return; - } - - if ( get_user_option( 'rich_editing' ) == 'true' ) { - - add_filter( 'mce_external_plugins', array( $this, 'register_tinymce_plugin' ) ); - add_filter( 'mce_buttons', array( $this, 'add_tinymce_buttons' ) ); - - } - - } - - /** - * Load TinyMCE Font Awesome dropdown plugin. - * - * @since 1.0.0 - */ - function register_tinymce_plugin( $plugin_array ) { - - global $tinymce_version; - - /** - * Register the correct TinyMCE plugin based on the version of TinyMCE - * being used. - */ - if ( version_compare( $tinymce_version, '4000', '>=' ) ) { - $plugin_array['bfa_plugin'] = $this->root_url . 'js/tinymce-icons.js'; - } else { - $plugin_array['bfa_plugin'] = $this->root_url . 'js/tinymce-icons-old.js'; - } - - return $plugin_array; - - } - - /** - * Add the TinyMCE button(s). - * - * @since 1.0.0 - */ - function add_tinymce_buttons( $buttons ) { - - array_push( $buttons, 'bfaSelect' ); - return $buttons; - - } - - /** - * Add PHP variables in HTML for use by TinyMCE JavaScript. - * - * @since 1.0.0 - */ - function output_admin_head_variables() { - - $icon_list = implode( ",", $this->icons ); - ?> - - - - root_url . 'css/admin-styles.css' ); + public function enqueue_admin_scripts() { + + // Check whether to get minified or non-minified files. + $suffix = ( defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ) ? '' : '.min'; + + // Custom admin CSS. + wp_enqueue_style( self::SLUG . '-admin', $this->root_url . 'css/admin-styles.css' ); + + // Custom admin JS. + wp_enqueue_script( self::SLUG . '-admin', $this->root_url . 'js/admin.js' ); + + // Icon picker JS and CSS. + wp_enqueue_style( 'fontawesome-iconpicker', $this->root_url . 'lib/fontawesome-iconpicker/css/fontawesome-iconpicker' . $suffix . '.css' ); + wp_enqueue_script( 'fontawesome-iconpicker', $this->root_url . 'lib/fontawesome-iconpicker/js/fontawesome-iconpicker' . $suffix . '.js' ); + + // Output PHP variables to JS. + $bfa_vars = array( + 'fa_prefix' => $this->prefix, + 'fa_icons' => $this->get_icons(), + ); + wp_localize_script( self::SLUG . '-admin', 'bfa_vars', $bfa_vars ); + + } + + /** + * [add_insert_shortcode_button description] + * + * @since 1.3.0 + */ + public function add_insert_shortcode_button() { + + ob_start(); + ?> + + +   + + + + + errors ) && apply_filters( 'bfa_show_errors', true ) ) : ?> @@ -1071,13 +1061,13 @@ class Better_Font_Awesome_Library {

- + get_error('api') ) ) : ?>


- ' . $this->get_error('api')->get_error_code() . ': ' . $this->get_error('api')->get_error_message() . '' ); ?> @@ -1088,8 +1078,8 @@ class Better_Font_Awesome_Library { get_error('css') ) ) : ?>


- ' . $this->get_error('css')->get_error_code() . ': ' . $this->get_error('css')->get_error_message() . '', '
', '' . $this->font_awesome_version . '' @@ -1130,7 +1120,7 @@ class Better_Font_Awesome_Library { * @return string $contents Content of local file. */ private function get_local_file_contents( $file_path ) { - + ob_start(); include $file_path; $contents = ob_get_clean(); @@ -1159,7 +1149,7 @@ class Better_Font_Awesome_Library { * @param string $error_type Type of error (api, css, etc). * @param string $code Error code. * @param string $message Error message. - */ + */ private function set_error( $error_type, $code, $message ) { $this->errors[ $error_type ] = new WP_Error( $code, $message ); } @@ -1189,7 +1179,7 @@ class Better_Font_Awesome_Library { if ( $this->api_data ) { return true; } else { - return false; + return false; } } @@ -1204,7 +1194,7 @@ class Better_Font_Awesome_Library { * @return mixed $value Value associated with specified key. */ public function get_api_value( $key ) { - + if ( $this->api_data ) { $value = $this->api_data->$key; } else { diff --git a/lib/better-font-awesome-library/css/admin-styles.css b/lib/better-font-awesome-library/css/admin-styles.css old mode 100644 new mode 100755 index ae72c46..92f0bdf --- a/lib/better-font-awesome-library/css/admin-styles.css +++ b/lib/better-font-awesome-library/css/admin-styles.css @@ -8,49 +8,53 @@ * @copyright 2014 MIGHTYminnow & Mickey Kay */ -/** - * TinyMCE - */ - -/* Override TinyMCE rules blocking these native Font Awesome styles */ -#menu_content_content_bfaSelect_menu .icon-fw, -#menu_content_content_bfaSelect_menu .fa-fw, -.mce-stack-layout-item .icon-fw, -.mce-stack-layout-item .fa-fw { - display: inline-block; - width: 1.2857142857142858em; - text-align: center; -} - -/* Override TinyMCE icon font family */ -.fa { - font-family: FontAwesome !important; -} - -/* BFA select icon (for versions < TinyMCE 4) */ -[id*="bfaSelect_text"]:before { - content: "\f024"; - margin-right: .5em; - font-family: FontAwesome; -} - /** - * Settings page + * TinyMCE Button & Popup */ -.bfa-usage-text { - padding: 20px; +.bfa-iconpicker .iconpicker-popover { + position: absolute; + top: 100%; + left: 0; + z-index: 1000; + display: none; + float: left; + min-width: 160px; + padding: 5px 0; + margin: 2px 0 0; + list-style: none; + font-size: 14px; background-color: #fff; - border: 1px solid #efefef; + border: 1px solid #ccc; + border: 1px solid rgba(0,0,0,.15); + border-radius: 4px; + -webkit-box-shadow: 0 6px 12px rgba(0,0,0,.175); + box-shadow: 0 6px 12px rgba(0,0,0,.175); + background-clip: padding-box; } -.bfa-usage-text h3 { - margin-top: 0; +.bfa-iconpicker .iconpicker-popover .arrow { + display: none !important; } -.bfa-usage-text .fa, -.bfa-usage-text .icon { - width: 40px; - text-align: center; - box-sizing: border-box; -} \ No newline at end of file +.bfa-iconpicker .iconpicker-item { + /* Override some unfortunate WP default admin mobile styles */ + width: 14px !important; + height: 14px !important; + padding: 14px !important; + font-size: 14px !important; + line-height: 1 !important; + box-shadow: 0 0 0 1px #ddd !important; +} + +.bfa-iconpicker input[type="search"] { + width: 100%; +} + +.bfa-iconpicker .iconpicker-popover.popover { + width: 253px; +} + +.bfa-iconpicker .iconpicker-component i { + display: none; +} diff --git a/lib/better-font-awesome-library/js/admin.js b/lib/better-font-awesome-library/js/admin.js new file mode 100644 index 0000000..383baab --- /dev/null +++ b/lib/better-font-awesome-library/js/admin.js @@ -0,0 +1,43 @@ +/** + * Better Font Awesome Library admin JS. + * + * @since 1.0.3 + * + * @package Better Font Awesome Library + */ + +( function( $ ) { + + $( document ).on( 'ready tinymce-editor-init', function() { + + $( '.bfa-iconpicker' ).not( '.initialized' ) + .addClass( 'initialized' ) + .iconpicker({ + placement: 'bottomLeft', + hideOnSelect: true, + animation: false, + selectedCustomClass: 'selected', + icons: bfa_vars.fa_icons, + fullClassFormatter: function( val ) { + if ( bfa_vars.fa_prefix ) { + return bfa_vars.fa_prefix + ' ' + bfa_vars.fa_prefix + '-' + val; + } else { + return val; + } + }, + }) + .on( 'click', function( e ) { + e.preventDefault(); + $( this ).find( '.iconpicker-search' ).focus(); + }) + .on( 'iconpickerSelect', function( e ) { + wp.media.editor.insert( icon_shortcode( e.iconpickerItem.context.title.replace( '.', '' ) ) ); + }); + + }); + + function icon_shortcode( icon ) { + return '[icon name="' + icon + '" class="" unprefixed_class=""]'; + } + +} )( jQuery ); diff --git a/lib/better-font-awesome-library/js/tinymce-icons-old.js b/lib/better-font-awesome-library/js/tinymce-icons-old.js deleted file mode 100644 index b4e60e6..0000000 --- a/lib/better-font-awesome-library/js/tinymce-icons-old.js +++ /dev/null @@ -1,43 +0,0 @@ -(function() { - - if( typeof bfa_vars != 'undefined' ) { - var icons = bfa_vars.fa_icons.split(','); - var prefix = bfa_vars.fa_prefix; - - var icon_i = function(id) { - return ''; - } - - var icon_shortcode = function(id) { - return '[icon name="' + id + '" class=""]'; - } - - var createControl = function(name, controlManager) { - if (name != 'bfaSelect') return null; - var listBox = controlManager.createListBox('bfaSelect', { - title: 'Icons', - onselect: function(v) { - var editor = this.control_manager.editor; - if (v) { - editor.selection.setContent(icon_shortcode(v)); - } - return false; - } - }); - - for (var i = 0; i < icons.length; i++) { - var _id = icons[i]; - listBox.add(icon_i(_id) + ' ' + _id, _id); - } - - return listBox; - }; - - tinymce.create('tinymce.plugins.bfa_plugin', { - createControl: createControl - }); - - tinymce.PluginManager.add('bfa_plugin', tinymce.plugins.bfa_plugin); - - } -})(); \ No newline at end of file diff --git a/lib/better-font-awesome-library/js/tinymce-icons.js b/lib/better-font-awesome-library/js/tinymce-icons.js deleted file mode 100644 index 2bd0a53..0000000 --- a/lib/better-font-awesome-library/js/tinymce-icons.js +++ /dev/null @@ -1,48 +0,0 @@ -( function() { - "use strict"; - - var icons = bfa_vars.fa_icons.split(','); - var prefix = bfa_vars.fa_prefix; - - var icon_shortcode = function(id) { - return '[icon name="' + id + '" class=""]'; - } - - var bfaSelect = function( editor, url ) { - editor.addButton('bfaSelect', function() { - var values = []; - - for (var i = 0; i < icons.length; i++) { - var _id = icons[i]; - values.push({text: _id, value: _id, icon: ' fa fa-fw icon-fw fa-' + _id + ' icon-' + _id }); - } - - return { - type: 'listbox', - name: 'bfaSelect', - tooltip: 'Better Font Awesome Icons', - icon: ' fa fa-flag icon-flag', - text: 'Icons', - label: 'Select :', - fixedWidth: true, - values: values, - onselect: function(e) { - if (e) { - editor.insertContent(icon_shortcode(e.control.settings.value)); - } - - // Reset back to inital "Icons" text - this.value(null); - - return false; - }, - onPostRender: function() { - this.addClass('bfaSelect'); - } - - }; - }); - - }; - tinymce.PluginManager.add( 'bfa_plugin', bfaSelect ); -} )(); \ No newline at end of file diff --git a/lib/better-font-awesome-library/lib/fallback-font-awesome/.gitignore b/lib/better-font-awesome-library/lib/fallback-font-awesome/.gitignore new file mode 100644 index 0000000..63dd521 --- /dev/null +++ b/lib/better-font-awesome-library/lib/fallback-font-awesome/.gitignore @@ -0,0 +1,32 @@ +*.pyc +*.egg-info +*.db +*.db.old +*.swp +*.db-journal + +.coverage +.DS_Store +.installed.cfg +_gh_pages/* + +.idea/* +.svn/* +src/website/static/* +src/website/media/* + +bin +cfcache +develop-eggs +dist +downloads +eggs +parts +tmp +.sass-cache +node_modules + +src/website/settingslocal.py +stunnel.log + +.ruby-version diff --git a/lib/better-font-awesome-library/lib/fallback-font-awesome/README.md b/lib/better-font-awesome-library/lib/fallback-font-awesome/README.md old mode 100644 new mode 100755 index bc7b1e9..8720a20 --- a/lib/better-font-awesome-library/lib/fallback-font-awesome/README.md +++ b/lib/better-font-awesome-library/lib/fallback-font-awesome/README.md @@ -1,7 +1,99 @@ -# Font Awesome # -This is a custom version of the Font Awesome repo pared down to only include: -* package.json -* /css -* /fonts +#[Font Awesome v4.4.0](http://fontawesome.io) +###The iconic font and CSS framework -It is intended to be as small as possible while still including all of the necessary components to embed Font Awesome in a project. \ No newline at end of file +Font Awesome is a full suite of 585 pictographic icons for easy scalable vector graphics on websites, +created and maintained by [Dave Gandy](http://twitter.com/davegandy). +Stay up to date with the latest release and announcements on Twitter: +[@fontawesome](http://twitter.com/fontawesome). + +Get started at http://fontawesome.io! + +##License +- The Font Awesome font is licensed under the SIL OFL 1.1: + - http://scripts.sil.org/OFL +- Font Awesome CSS, LESS, and Sass files are licensed under the MIT License: + - http://opensource.org/licenses/mit-license.html +- The Font Awesome documentation is licensed under the CC BY 3.0 License: + - http://creativecommons.org/licenses/by/3.0/ +- Attribution is no longer required as of Font Awesome 3.0, but much appreciated: + - `Font Awesome by Dave Gandy - http://fontawesome.io` +- Full details: http://fontawesome.io/license + +##Changelog +- v3.0.0 - all icons redesigned from scratch, optimized for Bootstrap's 14px default +- v3.0.1 - much improved rendering in webkit, various bug fixes +- v3.0.2 - much improved rendering and alignment in IE7 +- v3.1.0 - Added 54 icons, icon stacking styles, flipping and rotating icons, removed Sass support +- [v3.1.1 GitHub milestones](https://github.com/FortAwesome/Font-Awesome/issues?milestone=4&page=1&state=closed) +- [v3.2.0 GitHub milestones](https://github.com/FortAwesome/Font-Awesome/issues?milestone=3&page=1&state=closed) +- [v3.2.1 GitHub milestones](https://github.com/FortAwesome/Font-Awesome/issues?milestone=5&page=1&state=closed) +- [v4.0.0 GitHub milestones](https://github.com/FortAwesome/Font-Awesome/issues?milestone=2&page=1&state=closed) +- [v4.0.1 GitHub milestones](https://github.com/FortAwesome/Font-Awesome/issues?milestone=7&page=1&state=closed) +- [v4.0.2 GitHub milestones](https://github.com/FortAwesome/Font-Awesome/issues?milestone=8&page=1&state=closed) +- [v4.0.3 GitHub milestones](https://github.com/FortAwesome/Font-Awesome/issues?milestone=9&page=1&state=closed) +- [v4.1.0 GitHub milestones](https://github.com/FortAwesome/Font-Awesome/issues?milestone=6&page=1&state=closed) +- [v4.2.0 GitHub milestones](https://github.com/FortAwesome/Font-Awesome/issues?milestone=12&page=1&state=closed) +- [v4.3.0 GitHub milestones](https://github.com/FortAwesome/Font-Awesome/issues?q=milestone%3A4.3.0+is%3Aclosed) +- [v4.4.0 GitHub milestones](https://github.com/FortAwesome/Font-Awesome/issues?q=milestone%3A4.4.0+is%3Aclosed) + +## Contributing + +Please read through our [contributing guidelines](https://github.com/FortAwesome/Font-Awesome/blob/master/CONTRIBUTING.md). +Included are directions for opening issues, coding standards, and notes on development. + +##Versioning + +Font Awesome will be maintained under the Semantic Versioning guidelines as much as possible. Releases will be numbered +with the following format: + +`..` + +And constructed with the following guidelines: + +* Breaking backward compatibility bumps the major (and resets the minor and patch) +* New additions, including new icons, without breaking backward compatibility bumps the minor (and resets the patch) +* Bug fixes and misc changes bumps the patch + +For more information on SemVer, please visit http://semver.org. + +##Author +- Email: dave@fontawesome.io +- Twitter: http://twitter.com/davegandy +- GitHub: https://github.com/davegandy + +##Component +To include as a [component](http://github.com/component/component), just run + + $ component install FortAwesome/Font-Awesome + +Or add + + "FortAwesome/Font-Awesome": "*" + +to the `dependencies` in your `component.json`. + +## Hacking on Font Awesome + +**Before you can build the project**, you must first have the following installed: + +- [Ruby](https://www.ruby-lang.org/en/) +- Ruby Development Headers + - **Ubuntu:** `sudo apt-get install ruby-dev` *(Only if you're __NOT__ using `rbenv` or `rvm`)* + - **Windows:** [DevKit](http://rubyinstaller.org/) +- [Bundler](http://bundler.io/) (Run `gem install bundler` to install). +- [Node Package Manager (AKA NPM)](https://docs.npmjs.com/getting-started/installing-node) +- [Less](http://lesscss.org/) (Run `npm install -g less` to install). +- [Less Plugin: Clean CSS](https://github.com/less/less-plugin-clean-css) (Run `npm install -g less-plugin-clean-css` to install). + +From the root of the repository, install the tools used to develop. + + $ bundle install + $ npm install + +Build the project and documentation: + + $ bundle exec jekyll build + +Or serve it on a local server on http://localhost:7998/Font-Awesome/: + + $ bundle exec jekyll -w serve diff --git a/lib/better-font-awesome-library/lib/fallback-font-awesome/css/font-awesome.css b/lib/better-font-awesome-library/lib/fallback-font-awesome/css/font-awesome.css index 4040b3c..880eb82 100755 --- a/lib/better-font-awesome-library/lib/fallback-font-awesome/css/font-awesome.css +++ b/lib/better-font-awesome-library/lib/fallback-font-awesome/css/font-awesome.css @@ -1,13 +1,13 @@ /*! - * Font Awesome 4.2.0 by @davegandy - http://fontawesome.io - @fontawesome + * Font Awesome 4.4.0 by @davegandy - http://fontawesome.io - @fontawesome * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) */ /* FONT PATH * -------------------------- */ @font-face { font-family: 'FontAwesome'; - src: url('../fonts/fontawesome-webfont.eot?v=4.2.0'); - src: url('../fonts/fontawesome-webfont.eot?#iefix&v=4.2.0') format('embedded-opentype'), url('../fonts/fontawesome-webfont.woff?v=4.2.0') format('woff'), url('../fonts/fontawesome-webfont.ttf?v=4.2.0') format('truetype'), url('../fonts/fontawesome-webfont.svg?v=4.2.0#fontawesomeregular') format('svg'); + src: url('../fonts/fontawesome-webfont.eot?v=4.4.0'); + src: url('../fonts/fontawesome-webfont.eot?#iefix&v=4.4.0') format('embedded-opentype'), url('../fonts/fontawesome-webfont.woff2?v=4.4.0') format('woff2'), url('../fonts/fontawesome-webfont.woff?v=4.4.0') format('woff'), url('../fonts/fontawesome-webfont.ttf?v=4.4.0') format('truetype'), url('../fonts/fontawesome-webfont.svg?v=4.4.0#fontawesomeregular') format('svg'); font-weight: normal; font-style: normal; } @@ -64,6 +64,19 @@ border: solid 0.08em #eeeeee; border-radius: .1em; } +.fa-pull-left { + float: left; +} +.fa-pull-right { + float: right; +} +.fa.fa-pull-left { + margin-right: .3em; +} +.fa.fa-pull-right { + margin-left: .3em; +} +/* Deprecated as of 4.4.0 */ .pull-right { float: right; } @@ -80,6 +93,10 @@ -webkit-animation: fa-spin 2s infinite linear; animation: fa-spin 2s infinite linear; } +.fa-pulse { + -webkit-animation: fa-spin 1s infinite steps(8); + animation: fa-spin 1s infinite steps(8); +} @-webkit-keyframes fa-spin { 0% { -webkit-transform: rotate(0deg); @@ -610,6 +627,7 @@ .fa-twitter:before { content: "\f099"; } +.fa-facebook-f:before, .fa-facebook:before { content: "\f09a"; } @@ -622,6 +640,7 @@ .fa-credit-card:before { content: "\f09d"; } +.fa-feed:before, .fa-rss:before { content: "\f09e"; } @@ -1259,7 +1278,8 @@ .fa-male:before { content: "\f183"; } -.fa-gittip:before { +.fa-gittip:before, +.fa-gratipay:before { content: "\f184"; } .fa-sun-o:before { @@ -1502,6 +1522,8 @@ .fa-git:before { content: "\f1d3"; } +.fa-y-combinator-square:before, +.fa-yc-square:before, .fa-hacker-news:before { content: "\f1d4"; } @@ -1670,3 +1692,335 @@ .fa-meanpath:before { content: "\f20c"; } +.fa-buysellads:before { + content: "\f20d"; +} +.fa-connectdevelop:before { + content: "\f20e"; +} +.fa-dashcube:before { + content: "\f210"; +} +.fa-forumbee:before { + content: "\f211"; +} +.fa-leanpub:before { + content: "\f212"; +} +.fa-sellsy:before { + content: "\f213"; +} +.fa-shirtsinbulk:before { + content: "\f214"; +} +.fa-simplybuilt:before { + content: "\f215"; +} +.fa-skyatlas:before { + content: "\f216"; +} +.fa-cart-plus:before { + content: "\f217"; +} +.fa-cart-arrow-down:before { + content: "\f218"; +} +.fa-diamond:before { + content: "\f219"; +} +.fa-ship:before { + content: "\f21a"; +} +.fa-user-secret:before { + content: "\f21b"; +} +.fa-motorcycle:before { + content: "\f21c"; +} +.fa-street-view:before { + content: "\f21d"; +} +.fa-heartbeat:before { + content: "\f21e"; +} +.fa-venus:before { + content: "\f221"; +} +.fa-mars:before { + content: "\f222"; +} +.fa-mercury:before { + content: "\f223"; +} +.fa-intersex:before, +.fa-transgender:before { + content: "\f224"; +} +.fa-transgender-alt:before { + content: "\f225"; +} +.fa-venus-double:before { + content: "\f226"; +} +.fa-mars-double:before { + content: "\f227"; +} +.fa-venus-mars:before { + content: "\f228"; +} +.fa-mars-stroke:before { + content: "\f229"; +} +.fa-mars-stroke-v:before { + content: "\f22a"; +} +.fa-mars-stroke-h:before { + content: "\f22b"; +} +.fa-neuter:before { + content: "\f22c"; +} +.fa-genderless:before { + content: "\f22d"; +} +.fa-facebook-official:before { + content: "\f230"; +} +.fa-pinterest-p:before { + content: "\f231"; +} +.fa-whatsapp:before { + content: "\f232"; +} +.fa-server:before { + content: "\f233"; +} +.fa-user-plus:before { + content: "\f234"; +} +.fa-user-times:before { + content: "\f235"; +} +.fa-hotel:before, +.fa-bed:before { + content: "\f236"; +} +.fa-viacoin:before { + content: "\f237"; +} +.fa-train:before { + content: "\f238"; +} +.fa-subway:before { + content: "\f239"; +} +.fa-medium:before { + content: "\f23a"; +} +.fa-yc:before, +.fa-y-combinator:before { + content: "\f23b"; +} +.fa-optin-monster:before { + content: "\f23c"; +} +.fa-opencart:before { + content: "\f23d"; +} +.fa-expeditedssl:before { + content: "\f23e"; +} +.fa-battery-4:before, +.fa-battery-full:before { + content: "\f240"; +} +.fa-battery-3:before, +.fa-battery-three-quarters:before { + content: "\f241"; +} +.fa-battery-2:before, +.fa-battery-half:before { + content: "\f242"; +} +.fa-battery-1:before, +.fa-battery-quarter:before { + content: "\f243"; +} +.fa-battery-0:before, +.fa-battery-empty:before { + content: "\f244"; +} +.fa-mouse-pointer:before { + content: "\f245"; +} +.fa-i-cursor:before { + content: "\f246"; +} +.fa-object-group:before { + content: "\f247"; +} +.fa-object-ungroup:before { + content: "\f248"; +} +.fa-sticky-note:before { + content: "\f249"; +} +.fa-sticky-note-o:before { + content: "\f24a"; +} +.fa-cc-jcb:before { + content: "\f24b"; +} +.fa-cc-diners-club:before { + content: "\f24c"; +} +.fa-clone:before { + content: "\f24d"; +} +.fa-balance-scale:before { + content: "\f24e"; +} +.fa-hourglass-o:before { + content: "\f250"; +} +.fa-hourglass-1:before, +.fa-hourglass-start:before { + content: "\f251"; +} +.fa-hourglass-2:before, +.fa-hourglass-half:before { + content: "\f252"; +} +.fa-hourglass-3:before, +.fa-hourglass-end:before { + content: "\f253"; +} +.fa-hourglass:before { + content: "\f254"; +} +.fa-hand-grab-o:before, +.fa-hand-rock-o:before { + content: "\f255"; +} +.fa-hand-stop-o:before, +.fa-hand-paper-o:before { + content: "\f256"; +} +.fa-hand-scissors-o:before { + content: "\f257"; +} +.fa-hand-lizard-o:before { + content: "\f258"; +} +.fa-hand-spock-o:before { + content: "\f259"; +} +.fa-hand-pointer-o:before { + content: "\f25a"; +} +.fa-hand-peace-o:before { + content: "\f25b"; +} +.fa-trademark:before { + content: "\f25c"; +} +.fa-registered:before { + content: "\f25d"; +} +.fa-creative-commons:before { + content: "\f25e"; +} +.fa-gg:before { + content: "\f260"; +} +.fa-gg-circle:before { + content: "\f261"; +} +.fa-tripadvisor:before { + content: "\f262"; +} +.fa-odnoklassniki:before { + content: "\f263"; +} +.fa-odnoklassniki-square:before { + content: "\f264"; +} +.fa-get-pocket:before { + content: "\f265"; +} +.fa-wikipedia-w:before { + content: "\f266"; +} +.fa-safari:before { + content: "\f267"; +} +.fa-chrome:before { + content: "\f268"; +} +.fa-firefox:before { + content: "\f269"; +} +.fa-opera:before { + content: "\f26a"; +} +.fa-internet-explorer:before { + content: "\f26b"; +} +.fa-tv:before, +.fa-television:before { + content: "\f26c"; +} +.fa-contao:before { + content: "\f26d"; +} +.fa-500px:before { + content: "\f26e"; +} +.fa-amazon:before { + content: "\f270"; +} +.fa-calendar-plus-o:before { + content: "\f271"; +} +.fa-calendar-minus-o:before { + content: "\f272"; +} +.fa-calendar-times-o:before { + content: "\f273"; +} +.fa-calendar-check-o:before { + content: "\f274"; +} +.fa-industry:before { + content: "\f275"; +} +.fa-map-pin:before { + content: "\f276"; +} +.fa-map-signs:before { + content: "\f277"; +} +.fa-map-o:before { + content: "\f278"; +} +.fa-map:before { + content: "\f279"; +} +.fa-commenting:before { + content: "\f27a"; +} +.fa-commenting-o:before { + content: "\f27b"; +} +.fa-houzz:before { + content: "\f27c"; +} +.fa-vimeo:before { + content: "\f27d"; +} +.fa-black-tie:before { + content: "\f27e"; +} +.fa-fonticons:before { + content: "\f280"; +} diff --git a/lib/better-font-awesome-library/lib/fallback-font-awesome/css/font-awesome.css.map b/lib/better-font-awesome-library/lib/fallback-font-awesome/css/font-awesome.css.map new file mode 100755 index 0000000..60763a8 --- /dev/null +++ b/lib/better-font-awesome-library/lib/fallback-font-awesome/css/font-awesome.css.map @@ -0,0 +1,7 @@ +{ +"version": 3, +"mappings": "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", +"sources": ["../scss/_path.scss","../scss/_core.scss","../scss/_larger.scss","../scss/_fixed-width.scss","../scss/_list.scss","../scss/_variables.scss","../scss/_bordered-pulled.scss","../scss/_animated.scss","../scss/_rotated-flipped.scss","../scss/_mixins.scss","../scss/_stacked.scss","../scss/_icons.scss"], +"names": [], +"file": "font-awesome.css" +} diff --git a/lib/better-font-awesome-library/lib/fallback-font-awesome/css/font-awesome.min.css b/lib/better-font-awesome-library/lib/fallback-font-awesome/css/font-awesome.min.css index ec53d4d..ee4e978 100755 --- a/lib/better-font-awesome-library/lib/fallback-font-awesome/css/font-awesome.min.css +++ b/lib/better-font-awesome-library/lib/fallback-font-awesome/css/font-awesome.min.css @@ -1,4 +1,4 @@ /*! - * Font Awesome 4.2.0 by @davegandy - http://fontawesome.io - @fontawesome + * Font Awesome 4.4.0 by @davegandy - http://fontawesome.io - @fontawesome * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) - */@font-face{font-family:'FontAwesome';src:url('../fonts/fontawesome-webfont.eot?v=4.2.0');src:url('../fonts/fontawesome-webfont.eot?#iefix&v=4.2.0') format('embedded-opentype'),url('../fonts/fontawesome-webfont.woff?v=4.2.0') format('woff'),url('../fonts/fontawesome-webfont.ttf?v=4.2.0') format('truetype'),url('../fonts/fontawesome-webfont.svg?v=4.2.0#fontawesomeregular') format('svg');font-weight:normal;font-style:normal}.fa{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fa-lg{font-size:1.33333333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{width:1.28571429em;text-align:center}.fa-ul{padding-left:0;margin-left:2.14285714em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.14285714em;width:2.14285714em;top:.14285714em;text-align:center}.fa-li.fa-lg{left:-1.85714286em}.fa-border{padding:.2em .25em .15em;border:solid .08em #eee;border-radius:.1em}.pull-right{float:right}.pull-left{float:left}.fa.pull-left{margin-right:.3em}.fa.pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.fa-rotate-90{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=3);-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1);-webkit-transform:scale(-1, 1);-ms-transform:scale(-1, 1);transform:scale(-1, 1)}.fa-flip-vertical{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1);-webkit-transform:scale(1, -1);-ms-transform:scale(1, -1);transform:scale(1, -1)}:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270,:root .fa-flip-horizontal,:root .fa-flip-vertical{filter:none}.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:"\f000"}.fa-music:before{content:"\f001"}.fa-search:before{content:"\f002"}.fa-envelope-o:before{content:"\f003"}.fa-heart:before{content:"\f004"}.fa-star:before{content:"\f005"}.fa-star-o:before{content:"\f006"}.fa-user:before{content:"\f007"}.fa-film:before{content:"\f008"}.fa-th-large:before{content:"\f009"}.fa-th:before{content:"\f00a"}.fa-th-list:before{content:"\f00b"}.fa-check:before{content:"\f00c"}.fa-remove:before,.fa-close:before,.fa-times:before{content:"\f00d"}.fa-search-plus:before{content:"\f00e"}.fa-search-minus:before{content:"\f010"}.fa-power-off:before{content:"\f011"}.fa-signal:before{content:"\f012"}.fa-gear:before,.fa-cog:before{content:"\f013"}.fa-trash-o:before{content:"\f014"}.fa-home:before{content:"\f015"}.fa-file-o:before{content:"\f016"}.fa-clock-o:before{content:"\f017"}.fa-road:before{content:"\f018"}.fa-download:before{content:"\f019"}.fa-arrow-circle-o-down:before{content:"\f01a"}.fa-arrow-circle-o-up:before{content:"\f01b"}.fa-inbox:before{content:"\f01c"}.fa-play-circle-o:before{content:"\f01d"}.fa-rotate-right:before,.fa-repeat:before{content:"\f01e"}.fa-refresh:before{content:"\f021"}.fa-list-alt:before{content:"\f022"}.fa-lock:before{content:"\f023"}.fa-flag:before{content:"\f024"}.fa-headphones:before{content:"\f025"}.fa-volume-off:before{content:"\f026"}.fa-volume-down:before{content:"\f027"}.fa-volume-up:before{content:"\f028"}.fa-qrcode:before{content:"\f029"}.fa-barcode:before{content:"\f02a"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-book:before{content:"\f02d"}.fa-bookmark:before{content:"\f02e"}.fa-print:before{content:"\f02f"}.fa-camera:before{content:"\f030"}.fa-font:before{content:"\f031"}.fa-bold:before{content:"\f032"}.fa-italic:before{content:"\f033"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-align-left:before{content:"\f036"}.fa-align-center:before{content:"\f037"}.fa-align-right:before{content:"\f038"}.fa-align-justify:before{content:"\f039"}.fa-list:before{content:"\f03a"}.fa-dedent:before,.fa-outdent:before{content:"\f03b"}.fa-indent:before{content:"\f03c"}.fa-video-camera:before{content:"\f03d"}.fa-photo:before,.fa-image:before,.fa-picture-o:before{content:"\f03e"}.fa-pencil:before{content:"\f040"}.fa-map-marker:before{content:"\f041"}.fa-adjust:before{content:"\f042"}.fa-tint:before{content:"\f043"}.fa-edit:before,.fa-pencil-square-o:before{content:"\f044"}.fa-share-square-o:before{content:"\f045"}.fa-check-square-o:before{content:"\f046"}.fa-arrows:before{content:"\f047"}.fa-step-backward:before{content:"\f048"}.fa-fast-backward:before{content:"\f049"}.fa-backward:before{content:"\f04a"}.fa-play:before{content:"\f04b"}.fa-pause:before{content:"\f04c"}.fa-stop:before{content:"\f04d"}.fa-forward:before{content:"\f04e"}.fa-fast-forward:before{content:"\f050"}.fa-step-forward:before{content:"\f051"}.fa-eject:before{content:"\f052"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-plus-circle:before{content:"\f055"}.fa-minus-circle:before{content:"\f056"}.fa-times-circle:before{content:"\f057"}.fa-check-circle:before{content:"\f058"}.fa-question-circle:before{content:"\f059"}.fa-info-circle:before{content:"\f05a"}.fa-crosshairs:before{content:"\f05b"}.fa-times-circle-o:before{content:"\f05c"}.fa-check-circle-o:before{content:"\f05d"}.fa-ban:before{content:"\f05e"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrow-down:before{content:"\f063"}.fa-mail-forward:before,.fa-share:before{content:"\f064"}.fa-expand:before{content:"\f065"}.fa-compress:before{content:"\f066"}.fa-plus:before{content:"\f067"}.fa-minus:before{content:"\f068"}.fa-asterisk:before{content:"\f069"}.fa-exclamation-circle:before{content:"\f06a"}.fa-gift:before{content:"\f06b"}.fa-leaf:before{content:"\f06c"}.fa-fire:before{content:"\f06d"}.fa-eye:before{content:"\f06e"}.fa-eye-slash:before{content:"\f070"}.fa-warning:before,.fa-exclamation-triangle:before{content:"\f071"}.fa-plane:before{content:"\f072"}.fa-calendar:before{content:"\f073"}.fa-random:before{content:"\f074"}.fa-comment:before{content:"\f075"}.fa-magnet:before{content:"\f076"}.fa-chevron-up:before{content:"\f077"}.fa-chevron-down:before{content:"\f078"}.fa-retweet:before{content:"\f079"}.fa-shopping-cart:before{content:"\f07a"}.fa-folder:before{content:"\f07b"}.fa-folder-open:before{content:"\f07c"}.fa-arrows-v:before{content:"\f07d"}.fa-arrows-h:before{content:"\f07e"}.fa-bar-chart-o:before,.fa-bar-chart:before{content:"\f080"}.fa-twitter-square:before{content:"\f081"}.fa-facebook-square:before{content:"\f082"}.fa-camera-retro:before{content:"\f083"}.fa-key:before{content:"\f084"}.fa-gears:before,.fa-cogs:before{content:"\f085"}.fa-comments:before{content:"\f086"}.fa-thumbs-o-up:before{content:"\f087"}.fa-thumbs-o-down:before{content:"\f088"}.fa-star-half:before{content:"\f089"}.fa-heart-o:before{content:"\f08a"}.fa-sign-out:before{content:"\f08b"}.fa-linkedin-square:before{content:"\f08c"}.fa-thumb-tack:before{content:"\f08d"}.fa-external-link:before{content:"\f08e"}.fa-sign-in:before{content:"\f090"}.fa-trophy:before{content:"\f091"}.fa-github-square:before{content:"\f092"}.fa-upload:before{content:"\f093"}.fa-lemon-o:before{content:"\f094"}.fa-phone:before{content:"\f095"}.fa-square-o:before{content:"\f096"}.fa-bookmark-o:before{content:"\f097"}.fa-phone-square:before{content:"\f098"}.fa-twitter:before{content:"\f099"}.fa-facebook:before{content:"\f09a"}.fa-github:before{content:"\f09b"}.fa-unlock:before{content:"\f09c"}.fa-credit-card:before{content:"\f09d"}.fa-rss:before{content:"\f09e"}.fa-hdd-o:before{content:"\f0a0"}.fa-bullhorn:before{content:"\f0a1"}.fa-bell:before{content:"\f0f3"}.fa-certificate:before{content:"\f0a3"}.fa-hand-o-right:before{content:"\f0a4"}.fa-hand-o-left:before{content:"\f0a5"}.fa-hand-o-up:before{content:"\f0a6"}.fa-hand-o-down:before{content:"\f0a7"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-globe:before{content:"\f0ac"}.fa-wrench:before{content:"\f0ad"}.fa-tasks:before{content:"\f0ae"}.fa-filter:before{content:"\f0b0"}.fa-briefcase:before{content:"\f0b1"}.fa-arrows-alt:before{content:"\f0b2"}.fa-group:before,.fa-users:before{content:"\f0c0"}.fa-chain:before,.fa-link:before{content:"\f0c1"}.fa-cloud:before{content:"\f0c2"}.fa-flask:before{content:"\f0c3"}.fa-cut:before,.fa-scissors:before{content:"\f0c4"}.fa-copy:before,.fa-files-o:before{content:"\f0c5"}.fa-paperclip:before{content:"\f0c6"}.fa-save:before,.fa-floppy-o:before{content:"\f0c7"}.fa-square:before{content:"\f0c8"}.fa-navicon:before,.fa-reorder:before,.fa-bars:before{content:"\f0c9"}.fa-list-ul:before{content:"\f0ca"}.fa-list-ol:before{content:"\f0cb"}.fa-strikethrough:before{content:"\f0cc"}.fa-underline:before{content:"\f0cd"}.fa-table:before{content:"\f0ce"}.fa-magic:before{content:"\f0d0"}.fa-truck:before{content:"\f0d1"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-square:before{content:"\f0d3"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-plus:before{content:"\f0d5"}.fa-money:before{content:"\f0d6"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-up:before{content:"\f0d8"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-columns:before{content:"\f0db"}.fa-unsorted:before,.fa-sort:before{content:"\f0dc"}.fa-sort-down:before,.fa-sort-desc:before{content:"\f0dd"}.fa-sort-up:before,.fa-sort-asc:before{content:"\f0de"}.fa-envelope:before{content:"\f0e0"}.fa-linkedin:before{content:"\f0e1"}.fa-rotate-left:before,.fa-undo:before{content:"\f0e2"}.fa-legal:before,.fa-gavel:before{content:"\f0e3"}.fa-dashboard:before,.fa-tachometer:before{content:"\f0e4"}.fa-comment-o:before{content:"\f0e5"}.fa-comments-o:before{content:"\f0e6"}.fa-flash:before,.fa-bolt:before{content:"\f0e7"}.fa-sitemap:before{content:"\f0e8"}.fa-umbrella:before{content:"\f0e9"}.fa-paste:before,.fa-clipboard:before{content:"\f0ea"}.fa-lightbulb-o:before{content:"\f0eb"}.fa-exchange:before{content:"\f0ec"}.fa-cloud-download:before{content:"\f0ed"}.fa-cloud-upload:before{content:"\f0ee"}.fa-user-md:before{content:"\f0f0"}.fa-stethoscope:before{content:"\f0f1"}.fa-suitcase:before{content:"\f0f2"}.fa-bell-o:before{content:"\f0a2"}.fa-coffee:before{content:"\f0f4"}.fa-cutlery:before{content:"\f0f5"}.fa-file-text-o:before{content:"\f0f6"}.fa-building-o:before{content:"\f0f7"}.fa-hospital-o:before{content:"\f0f8"}.fa-ambulance:before{content:"\f0f9"}.fa-medkit:before{content:"\f0fa"}.fa-fighter-jet:before{content:"\f0fb"}.fa-beer:before{content:"\f0fc"}.fa-h-square:before{content:"\f0fd"}.fa-plus-square:before{content:"\f0fe"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angle-down:before{content:"\f107"}.fa-desktop:before{content:"\f108"}.fa-laptop:before{content:"\f109"}.fa-tablet:before{content:"\f10a"}.fa-mobile-phone:before,.fa-mobile:before{content:"\f10b"}.fa-circle-o:before{content:"\f10c"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-spinner:before{content:"\f110"}.fa-circle:before{content:"\f111"}.fa-mail-reply:before,.fa-reply:before{content:"\f112"}.fa-github-alt:before{content:"\f113"}.fa-folder-o:before{content:"\f114"}.fa-folder-open-o:before{content:"\f115"}.fa-smile-o:before{content:"\f118"}.fa-frown-o:before{content:"\f119"}.fa-meh-o:before{content:"\f11a"}.fa-gamepad:before{content:"\f11b"}.fa-keyboard-o:before{content:"\f11c"}.fa-flag-o:before{content:"\f11d"}.fa-flag-checkered:before{content:"\f11e"}.fa-terminal:before{content:"\f120"}.fa-code:before{content:"\f121"}.fa-mail-reply-all:before,.fa-reply-all:before{content:"\f122"}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:"\f123"}.fa-location-arrow:before{content:"\f124"}.fa-crop:before{content:"\f125"}.fa-code-fork:before{content:"\f126"}.fa-unlink:before,.fa-chain-broken:before{content:"\f127"}.fa-question:before{content:"\f128"}.fa-info:before{content:"\f129"}.fa-exclamation:before{content:"\f12a"}.fa-superscript:before{content:"\f12b"}.fa-subscript:before{content:"\f12c"}.fa-eraser:before{content:"\f12d"}.fa-puzzle-piece:before{content:"\f12e"}.fa-microphone:before{content:"\f130"}.fa-microphone-slash:before{content:"\f131"}.fa-shield:before{content:"\f132"}.fa-calendar-o:before{content:"\f133"}.fa-fire-extinguisher:before{content:"\f134"}.fa-rocket:before{content:"\f135"}.fa-maxcdn:before{content:"\f136"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-html5:before{content:"\f13b"}.fa-css3:before{content:"\f13c"}.fa-anchor:before{content:"\f13d"}.fa-unlock-alt:before{content:"\f13e"}.fa-bullseye:before{content:"\f140"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-rss-square:before{content:"\f143"}.fa-play-circle:before{content:"\f144"}.fa-ticket:before{content:"\f145"}.fa-minus-square:before{content:"\f146"}.fa-minus-square-o:before{content:"\f147"}.fa-level-up:before{content:"\f148"}.fa-level-down:before{content:"\f149"}.fa-check-square:before{content:"\f14a"}.fa-pencil-square:before{content:"\f14b"}.fa-external-link-square:before{content:"\f14c"}.fa-share-square:before{content:"\f14d"}.fa-compass:before{content:"\f14e"}.fa-toggle-down:before,.fa-caret-square-o-down:before{content:"\f150"}.fa-toggle-up:before,.fa-caret-square-o-up:before{content:"\f151"}.fa-toggle-right:before,.fa-caret-square-o-right:before{content:"\f152"}.fa-euro:before,.fa-eur:before{content:"\f153"}.fa-gbp:before{content:"\f154"}.fa-dollar:before,.fa-usd:before{content:"\f155"}.fa-rupee:before,.fa-inr:before{content:"\f156"}.fa-cny:before,.fa-rmb:before,.fa-yen:before,.fa-jpy:before{content:"\f157"}.fa-ruble:before,.fa-rouble:before,.fa-rub:before{content:"\f158"}.fa-won:before,.fa-krw:before{content:"\f159"}.fa-bitcoin:before,.fa-btc:before{content:"\f15a"}.fa-file:before{content:"\f15b"}.fa-file-text:before{content:"\f15c"}.fa-sort-alpha-asc:before{content:"\f15d"}.fa-sort-alpha-desc:before{content:"\f15e"}.fa-sort-amount-asc:before{content:"\f160"}.fa-sort-amount-desc:before{content:"\f161"}.fa-sort-numeric-asc:before{content:"\f162"}.fa-sort-numeric-desc:before{content:"\f163"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbs-down:before{content:"\f165"}.fa-youtube-square:before{content:"\f166"}.fa-youtube:before{content:"\f167"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-youtube-play:before{content:"\f16a"}.fa-dropbox:before{content:"\f16b"}.fa-stack-overflow:before{content:"\f16c"}.fa-instagram:before{content:"\f16d"}.fa-flickr:before{content:"\f16e"}.fa-adn:before{content:"\f170"}.fa-bitbucket:before{content:"\f171"}.fa-bitbucket-square:before{content:"\f172"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-long-arrow-down:before{content:"\f175"}.fa-long-arrow-up:before{content:"\f176"}.fa-long-arrow-left:before{content:"\f177"}.fa-long-arrow-right:before{content:"\f178"}.fa-apple:before{content:"\f179"}.fa-windows:before{content:"\f17a"}.fa-android:before{content:"\f17b"}.fa-linux:before{content:"\f17c"}.fa-dribbble:before{content:"\f17d"}.fa-skype:before{content:"\f17e"}.fa-foursquare:before{content:"\f180"}.fa-trello:before{content:"\f181"}.fa-female:before{content:"\f182"}.fa-male:before{content:"\f183"}.fa-gittip:before{content:"\f184"}.fa-sun-o:before{content:"\f185"}.fa-moon-o:before{content:"\f186"}.fa-archive:before{content:"\f187"}.fa-bug:before{content:"\f188"}.fa-vk:before{content:"\f189"}.fa-weibo:before{content:"\f18a"}.fa-renren:before{content:"\f18b"}.fa-pagelines:before{content:"\f18c"}.fa-stack-exchange:before{content:"\f18d"}.fa-arrow-circle-o-right:before{content:"\f18e"}.fa-arrow-circle-o-left:before{content:"\f190"}.fa-toggle-left:before,.fa-caret-square-o-left:before{content:"\f191"}.fa-dot-circle-o:before{content:"\f192"}.fa-wheelchair:before{content:"\f193"}.fa-vimeo-square:before{content:"\f194"}.fa-turkish-lira:before,.fa-try:before{content:"\f195"}.fa-plus-square-o:before{content:"\f196"}.fa-space-shuttle:before{content:"\f197"}.fa-slack:before{content:"\f198"}.fa-envelope-square:before{content:"\f199"}.fa-wordpress:before{content:"\f19a"}.fa-openid:before{content:"\f19b"}.fa-institution:before,.fa-bank:before,.fa-university:before{content:"\f19c"}.fa-mortar-board:before,.fa-graduation-cap:before{content:"\f19d"}.fa-yahoo:before{content:"\f19e"}.fa-google:before{content:"\f1a0"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-square:before{content:"\f1a2"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-stumbleupon:before{content:"\f1a4"}.fa-delicious:before{content:"\f1a5"}.fa-digg:before{content:"\f1a6"}.fa-pied-piper:before{content:"\f1a7"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-drupal:before{content:"\f1a9"}.fa-joomla:before{content:"\f1aa"}.fa-language:before{content:"\f1ab"}.fa-fax:before{content:"\f1ac"}.fa-building:before{content:"\f1ad"}.fa-child:before{content:"\f1ae"}.fa-paw:before{content:"\f1b0"}.fa-spoon:before{content:"\f1b1"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-recycle:before{content:"\f1b8"}.fa-automobile:before,.fa-car:before{content:"\f1b9"}.fa-cab:before,.fa-taxi:before{content:"\f1ba"}.fa-tree:before{content:"\f1bb"}.fa-spotify:before{content:"\f1bc"}.fa-deviantart:before{content:"\f1bd"}.fa-soundcloud:before{content:"\f1be"}.fa-database:before{content:"\f1c0"}.fa-file-pdf-o:before{content:"\f1c1"}.fa-file-word-o:before{content:"\f1c2"}.fa-file-excel-o:before{content:"\f1c3"}.fa-file-powerpoint-o:before{content:"\f1c4"}.fa-file-photo-o:before,.fa-file-picture-o:before,.fa-file-image-o:before{content:"\f1c5"}.fa-file-zip-o:before,.fa-file-archive-o:before{content:"\f1c6"}.fa-file-sound-o:before,.fa-file-audio-o:before{content:"\f1c7"}.fa-file-movie-o:before,.fa-file-video-o:before{content:"\f1c8"}.fa-file-code-o:before{content:"\f1c9"}.fa-vine:before{content:"\f1ca"}.fa-codepen:before{content:"\f1cb"}.fa-jsfiddle:before{content:"\f1cc"}.fa-life-bouy:before,.fa-life-buoy:before,.fa-life-saver:before,.fa-support:before,.fa-life-ring:before{content:"\f1cd"}.fa-circle-o-notch:before{content:"\f1ce"}.fa-ra:before,.fa-rebel:before{content:"\f1d0"}.fa-ge:before,.fa-empire:before{content:"\f1d1"}.fa-git-square:before{content:"\f1d2"}.fa-git:before{content:"\f1d3"}.fa-hacker-news:before{content:"\f1d4"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-qq:before{content:"\f1d6"}.fa-wechat:before,.fa-weixin:before{content:"\f1d7"}.fa-send:before,.fa-paper-plane:before{content:"\f1d8"}.fa-send-o:before,.fa-paper-plane-o:before{content:"\f1d9"}.fa-history:before{content:"\f1da"}.fa-circle-thin:before{content:"\f1db"}.fa-header:before{content:"\f1dc"}.fa-paragraph:before{content:"\f1dd"}.fa-sliders:before{content:"\f1de"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-bomb:before{content:"\f1e2"}.fa-soccer-ball-o:before,.fa-futbol-o:before{content:"\f1e3"}.fa-tty:before{content:"\f1e4"}.fa-binoculars:before{content:"\f1e5"}.fa-plug:before{content:"\f1e6"}.fa-slideshare:before{content:"\f1e7"}.fa-twitch:before{content:"\f1e8"}.fa-yelp:before{content:"\f1e9"}.fa-newspaper-o:before{content:"\f1ea"}.fa-wifi:before{content:"\f1eb"}.fa-calculator:before{content:"\f1ec"}.fa-paypal:before{content:"\f1ed"}.fa-google-wallet:before{content:"\f1ee"}.fa-cc-visa:before{content:"\f1f0"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-bell-slash:before{content:"\f1f6"}.fa-bell-slash-o:before{content:"\f1f7"}.fa-trash:before{content:"\f1f8"}.fa-copyright:before{content:"\f1f9"}.fa-at:before{content:"\f1fa"}.fa-eyedropper:before{content:"\f1fb"}.fa-paint-brush:before{content:"\f1fc"}.fa-birthday-cake:before{content:"\f1fd"}.fa-area-chart:before{content:"\f1fe"}.fa-pie-chart:before{content:"\f200"}.fa-line-chart:before{content:"\f201"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-bicycle:before{content:"\f206"}.fa-bus:before{content:"\f207"}.fa-ioxhost:before{content:"\f208"}.fa-angellist:before{content:"\f209"}.fa-cc:before{content:"\f20a"}.fa-shekel:before,.fa-sheqel:before,.fa-ils:before{content:"\f20b"}.fa-meanpath:before{content:"\f20c"} \ No newline at end of file + */@font-face{font-family:'FontAwesome';src:url('../fonts/fontawesome-webfont.eot?v=4.4.0');src:url('../fonts/fontawesome-webfont.eot?#iefix&v=4.4.0') format('embedded-opentype'),url('../fonts/fontawesome-webfont.woff2?v=4.4.0') format('woff2'),url('../fonts/fontawesome-webfont.woff?v=4.4.0') format('woff'),url('../fonts/fontawesome-webfont.ttf?v=4.4.0') format('truetype'),url('../fonts/fontawesome-webfont.svg?v=4.4.0#fontawesomeregular') format('svg');font-weight:normal;font-style:normal}.fa{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fa-lg{font-size:1.33333333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{width:1.28571429em;text-align:center}.fa-ul{padding-left:0;margin-left:2.14285714em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.14285714em;width:2.14285714em;top:.14285714em;text-align:center}.fa-li.fa-lg{left:-1.85714286em}.fa-border{padding:.2em .25em .15em;border:solid .08em #eee;border-radius:.1em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left{margin-right:.3em}.fa.fa-pull-right{margin-left:.3em}.pull-right{float:right}.pull-left{float:left}.fa.pull-left{margin-right:.3em}.fa.pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.fa-pulse{-webkit-animation:fa-spin 1s infinite steps(8);animation:fa-spin 1s infinite steps(8)}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.fa-rotate-90{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=3);-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1);-webkit-transform:scale(-1, 1);-ms-transform:scale(-1, 1);transform:scale(-1, 1)}.fa-flip-vertical{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1);-webkit-transform:scale(1, -1);-ms-transform:scale(1, -1);transform:scale(1, -1)}:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270,:root .fa-flip-horizontal,:root .fa-flip-vertical{filter:none}.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:"\f000"}.fa-music:before{content:"\f001"}.fa-search:before{content:"\f002"}.fa-envelope-o:before{content:"\f003"}.fa-heart:before{content:"\f004"}.fa-star:before{content:"\f005"}.fa-star-o:before{content:"\f006"}.fa-user:before{content:"\f007"}.fa-film:before{content:"\f008"}.fa-th-large:before{content:"\f009"}.fa-th:before{content:"\f00a"}.fa-th-list:before{content:"\f00b"}.fa-check:before{content:"\f00c"}.fa-remove:before,.fa-close:before,.fa-times:before{content:"\f00d"}.fa-search-plus:before{content:"\f00e"}.fa-search-minus:before{content:"\f010"}.fa-power-off:before{content:"\f011"}.fa-signal:before{content:"\f012"}.fa-gear:before,.fa-cog:before{content:"\f013"}.fa-trash-o:before{content:"\f014"}.fa-home:before{content:"\f015"}.fa-file-o:before{content:"\f016"}.fa-clock-o:before{content:"\f017"}.fa-road:before{content:"\f018"}.fa-download:before{content:"\f019"}.fa-arrow-circle-o-down:before{content:"\f01a"}.fa-arrow-circle-o-up:before{content:"\f01b"}.fa-inbox:before{content:"\f01c"}.fa-play-circle-o:before{content:"\f01d"}.fa-rotate-right:before,.fa-repeat:before{content:"\f01e"}.fa-refresh:before{content:"\f021"}.fa-list-alt:before{content:"\f022"}.fa-lock:before{content:"\f023"}.fa-flag:before{content:"\f024"}.fa-headphones:before{content:"\f025"}.fa-volume-off:before{content:"\f026"}.fa-volume-down:before{content:"\f027"}.fa-volume-up:before{content:"\f028"}.fa-qrcode:before{content:"\f029"}.fa-barcode:before{content:"\f02a"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-book:before{content:"\f02d"}.fa-bookmark:before{content:"\f02e"}.fa-print:before{content:"\f02f"}.fa-camera:before{content:"\f030"}.fa-font:before{content:"\f031"}.fa-bold:before{content:"\f032"}.fa-italic:before{content:"\f033"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-align-left:before{content:"\f036"}.fa-align-center:before{content:"\f037"}.fa-align-right:before{content:"\f038"}.fa-align-justify:before{content:"\f039"}.fa-list:before{content:"\f03a"}.fa-dedent:before,.fa-outdent:before{content:"\f03b"}.fa-indent:before{content:"\f03c"}.fa-video-camera:before{content:"\f03d"}.fa-photo:before,.fa-image:before,.fa-picture-o:before{content:"\f03e"}.fa-pencil:before{content:"\f040"}.fa-map-marker:before{content:"\f041"}.fa-adjust:before{content:"\f042"}.fa-tint:before{content:"\f043"}.fa-edit:before,.fa-pencil-square-o:before{content:"\f044"}.fa-share-square-o:before{content:"\f045"}.fa-check-square-o:before{content:"\f046"}.fa-arrows:before{content:"\f047"}.fa-step-backward:before{content:"\f048"}.fa-fast-backward:before{content:"\f049"}.fa-backward:before{content:"\f04a"}.fa-play:before{content:"\f04b"}.fa-pause:before{content:"\f04c"}.fa-stop:before{content:"\f04d"}.fa-forward:before{content:"\f04e"}.fa-fast-forward:before{content:"\f050"}.fa-step-forward:before{content:"\f051"}.fa-eject:before{content:"\f052"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-plus-circle:before{content:"\f055"}.fa-minus-circle:before{content:"\f056"}.fa-times-circle:before{content:"\f057"}.fa-check-circle:before{content:"\f058"}.fa-question-circle:before{content:"\f059"}.fa-info-circle:before{content:"\f05a"}.fa-crosshairs:before{content:"\f05b"}.fa-times-circle-o:before{content:"\f05c"}.fa-check-circle-o:before{content:"\f05d"}.fa-ban:before{content:"\f05e"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrow-down:before{content:"\f063"}.fa-mail-forward:before,.fa-share:before{content:"\f064"}.fa-expand:before{content:"\f065"}.fa-compress:before{content:"\f066"}.fa-plus:before{content:"\f067"}.fa-minus:before{content:"\f068"}.fa-asterisk:before{content:"\f069"}.fa-exclamation-circle:before{content:"\f06a"}.fa-gift:before{content:"\f06b"}.fa-leaf:before{content:"\f06c"}.fa-fire:before{content:"\f06d"}.fa-eye:before{content:"\f06e"}.fa-eye-slash:before{content:"\f070"}.fa-warning:before,.fa-exclamation-triangle:before{content:"\f071"}.fa-plane:before{content:"\f072"}.fa-calendar:before{content:"\f073"}.fa-random:before{content:"\f074"}.fa-comment:before{content:"\f075"}.fa-magnet:before{content:"\f076"}.fa-chevron-up:before{content:"\f077"}.fa-chevron-down:before{content:"\f078"}.fa-retweet:before{content:"\f079"}.fa-shopping-cart:before{content:"\f07a"}.fa-folder:before{content:"\f07b"}.fa-folder-open:before{content:"\f07c"}.fa-arrows-v:before{content:"\f07d"}.fa-arrows-h:before{content:"\f07e"}.fa-bar-chart-o:before,.fa-bar-chart:before{content:"\f080"}.fa-twitter-square:before{content:"\f081"}.fa-facebook-square:before{content:"\f082"}.fa-camera-retro:before{content:"\f083"}.fa-key:before{content:"\f084"}.fa-gears:before,.fa-cogs:before{content:"\f085"}.fa-comments:before{content:"\f086"}.fa-thumbs-o-up:before{content:"\f087"}.fa-thumbs-o-down:before{content:"\f088"}.fa-star-half:before{content:"\f089"}.fa-heart-o:before{content:"\f08a"}.fa-sign-out:before{content:"\f08b"}.fa-linkedin-square:before{content:"\f08c"}.fa-thumb-tack:before{content:"\f08d"}.fa-external-link:before{content:"\f08e"}.fa-sign-in:before{content:"\f090"}.fa-trophy:before{content:"\f091"}.fa-github-square:before{content:"\f092"}.fa-upload:before{content:"\f093"}.fa-lemon-o:before{content:"\f094"}.fa-phone:before{content:"\f095"}.fa-square-o:before{content:"\f096"}.fa-bookmark-o:before{content:"\f097"}.fa-phone-square:before{content:"\f098"}.fa-twitter:before{content:"\f099"}.fa-facebook-f:before,.fa-facebook:before{content:"\f09a"}.fa-github:before{content:"\f09b"}.fa-unlock:before{content:"\f09c"}.fa-credit-card:before{content:"\f09d"}.fa-feed:before,.fa-rss:before{content:"\f09e"}.fa-hdd-o:before{content:"\f0a0"}.fa-bullhorn:before{content:"\f0a1"}.fa-bell:before{content:"\f0f3"}.fa-certificate:before{content:"\f0a3"}.fa-hand-o-right:before{content:"\f0a4"}.fa-hand-o-left:before{content:"\f0a5"}.fa-hand-o-up:before{content:"\f0a6"}.fa-hand-o-down:before{content:"\f0a7"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-globe:before{content:"\f0ac"}.fa-wrench:before{content:"\f0ad"}.fa-tasks:before{content:"\f0ae"}.fa-filter:before{content:"\f0b0"}.fa-briefcase:before{content:"\f0b1"}.fa-arrows-alt:before{content:"\f0b2"}.fa-group:before,.fa-users:before{content:"\f0c0"}.fa-chain:before,.fa-link:before{content:"\f0c1"}.fa-cloud:before{content:"\f0c2"}.fa-flask:before{content:"\f0c3"}.fa-cut:before,.fa-scissors:before{content:"\f0c4"}.fa-copy:before,.fa-files-o:before{content:"\f0c5"}.fa-paperclip:before{content:"\f0c6"}.fa-save:before,.fa-floppy-o:before{content:"\f0c7"}.fa-square:before{content:"\f0c8"}.fa-navicon:before,.fa-reorder:before,.fa-bars:before{content:"\f0c9"}.fa-list-ul:before{content:"\f0ca"}.fa-list-ol:before{content:"\f0cb"}.fa-strikethrough:before{content:"\f0cc"}.fa-underline:before{content:"\f0cd"}.fa-table:before{content:"\f0ce"}.fa-magic:before{content:"\f0d0"}.fa-truck:before{content:"\f0d1"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-square:before{content:"\f0d3"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-plus:before{content:"\f0d5"}.fa-money:before{content:"\f0d6"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-up:before{content:"\f0d8"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-columns:before{content:"\f0db"}.fa-unsorted:before,.fa-sort:before{content:"\f0dc"}.fa-sort-down:before,.fa-sort-desc:before{content:"\f0dd"}.fa-sort-up:before,.fa-sort-asc:before{content:"\f0de"}.fa-envelope:before{content:"\f0e0"}.fa-linkedin:before{content:"\f0e1"}.fa-rotate-left:before,.fa-undo:before{content:"\f0e2"}.fa-legal:before,.fa-gavel:before{content:"\f0e3"}.fa-dashboard:before,.fa-tachometer:before{content:"\f0e4"}.fa-comment-o:before{content:"\f0e5"}.fa-comments-o:before{content:"\f0e6"}.fa-flash:before,.fa-bolt:before{content:"\f0e7"}.fa-sitemap:before{content:"\f0e8"}.fa-umbrella:before{content:"\f0e9"}.fa-paste:before,.fa-clipboard:before{content:"\f0ea"}.fa-lightbulb-o:before{content:"\f0eb"}.fa-exchange:before{content:"\f0ec"}.fa-cloud-download:before{content:"\f0ed"}.fa-cloud-upload:before{content:"\f0ee"}.fa-user-md:before{content:"\f0f0"}.fa-stethoscope:before{content:"\f0f1"}.fa-suitcase:before{content:"\f0f2"}.fa-bell-o:before{content:"\f0a2"}.fa-coffee:before{content:"\f0f4"}.fa-cutlery:before{content:"\f0f5"}.fa-file-text-o:before{content:"\f0f6"}.fa-building-o:before{content:"\f0f7"}.fa-hospital-o:before{content:"\f0f8"}.fa-ambulance:before{content:"\f0f9"}.fa-medkit:before{content:"\f0fa"}.fa-fighter-jet:before{content:"\f0fb"}.fa-beer:before{content:"\f0fc"}.fa-h-square:before{content:"\f0fd"}.fa-plus-square:before{content:"\f0fe"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angle-down:before{content:"\f107"}.fa-desktop:before{content:"\f108"}.fa-laptop:before{content:"\f109"}.fa-tablet:before{content:"\f10a"}.fa-mobile-phone:before,.fa-mobile:before{content:"\f10b"}.fa-circle-o:before{content:"\f10c"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-spinner:before{content:"\f110"}.fa-circle:before{content:"\f111"}.fa-mail-reply:before,.fa-reply:before{content:"\f112"}.fa-github-alt:before{content:"\f113"}.fa-folder-o:before{content:"\f114"}.fa-folder-open-o:before{content:"\f115"}.fa-smile-o:before{content:"\f118"}.fa-frown-o:before{content:"\f119"}.fa-meh-o:before{content:"\f11a"}.fa-gamepad:before{content:"\f11b"}.fa-keyboard-o:before{content:"\f11c"}.fa-flag-o:before{content:"\f11d"}.fa-flag-checkered:before{content:"\f11e"}.fa-terminal:before{content:"\f120"}.fa-code:before{content:"\f121"}.fa-mail-reply-all:before,.fa-reply-all:before{content:"\f122"}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:"\f123"}.fa-location-arrow:before{content:"\f124"}.fa-crop:before{content:"\f125"}.fa-code-fork:before{content:"\f126"}.fa-unlink:before,.fa-chain-broken:before{content:"\f127"}.fa-question:before{content:"\f128"}.fa-info:before{content:"\f129"}.fa-exclamation:before{content:"\f12a"}.fa-superscript:before{content:"\f12b"}.fa-subscript:before{content:"\f12c"}.fa-eraser:before{content:"\f12d"}.fa-puzzle-piece:before{content:"\f12e"}.fa-microphone:before{content:"\f130"}.fa-microphone-slash:before{content:"\f131"}.fa-shield:before{content:"\f132"}.fa-calendar-o:before{content:"\f133"}.fa-fire-extinguisher:before{content:"\f134"}.fa-rocket:before{content:"\f135"}.fa-maxcdn:before{content:"\f136"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-html5:before{content:"\f13b"}.fa-css3:before{content:"\f13c"}.fa-anchor:before{content:"\f13d"}.fa-unlock-alt:before{content:"\f13e"}.fa-bullseye:before{content:"\f140"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-rss-square:before{content:"\f143"}.fa-play-circle:before{content:"\f144"}.fa-ticket:before{content:"\f145"}.fa-minus-square:before{content:"\f146"}.fa-minus-square-o:before{content:"\f147"}.fa-level-up:before{content:"\f148"}.fa-level-down:before{content:"\f149"}.fa-check-square:before{content:"\f14a"}.fa-pencil-square:before{content:"\f14b"}.fa-external-link-square:before{content:"\f14c"}.fa-share-square:before{content:"\f14d"}.fa-compass:before{content:"\f14e"}.fa-toggle-down:before,.fa-caret-square-o-down:before{content:"\f150"}.fa-toggle-up:before,.fa-caret-square-o-up:before{content:"\f151"}.fa-toggle-right:before,.fa-caret-square-o-right:before{content:"\f152"}.fa-euro:before,.fa-eur:before{content:"\f153"}.fa-gbp:before{content:"\f154"}.fa-dollar:before,.fa-usd:before{content:"\f155"}.fa-rupee:before,.fa-inr:before{content:"\f156"}.fa-cny:before,.fa-rmb:before,.fa-yen:before,.fa-jpy:before{content:"\f157"}.fa-ruble:before,.fa-rouble:before,.fa-rub:before{content:"\f158"}.fa-won:before,.fa-krw:before{content:"\f159"}.fa-bitcoin:before,.fa-btc:before{content:"\f15a"}.fa-file:before{content:"\f15b"}.fa-file-text:before{content:"\f15c"}.fa-sort-alpha-asc:before{content:"\f15d"}.fa-sort-alpha-desc:before{content:"\f15e"}.fa-sort-amount-asc:before{content:"\f160"}.fa-sort-amount-desc:before{content:"\f161"}.fa-sort-numeric-asc:before{content:"\f162"}.fa-sort-numeric-desc:before{content:"\f163"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbs-down:before{content:"\f165"}.fa-youtube-square:before{content:"\f166"}.fa-youtube:before{content:"\f167"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-youtube-play:before{content:"\f16a"}.fa-dropbox:before{content:"\f16b"}.fa-stack-overflow:before{content:"\f16c"}.fa-instagram:before{content:"\f16d"}.fa-flickr:before{content:"\f16e"}.fa-adn:before{content:"\f170"}.fa-bitbucket:before{content:"\f171"}.fa-bitbucket-square:before{content:"\f172"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-long-arrow-down:before{content:"\f175"}.fa-long-arrow-up:before{content:"\f176"}.fa-long-arrow-left:before{content:"\f177"}.fa-long-arrow-right:before{content:"\f178"}.fa-apple:before{content:"\f179"}.fa-windows:before{content:"\f17a"}.fa-android:before{content:"\f17b"}.fa-linux:before{content:"\f17c"}.fa-dribbble:before{content:"\f17d"}.fa-skype:before{content:"\f17e"}.fa-foursquare:before{content:"\f180"}.fa-trello:before{content:"\f181"}.fa-female:before{content:"\f182"}.fa-male:before{content:"\f183"}.fa-gittip:before,.fa-gratipay:before{content:"\f184"}.fa-sun-o:before{content:"\f185"}.fa-moon-o:before{content:"\f186"}.fa-archive:before{content:"\f187"}.fa-bug:before{content:"\f188"}.fa-vk:before{content:"\f189"}.fa-weibo:before{content:"\f18a"}.fa-renren:before{content:"\f18b"}.fa-pagelines:before{content:"\f18c"}.fa-stack-exchange:before{content:"\f18d"}.fa-arrow-circle-o-right:before{content:"\f18e"}.fa-arrow-circle-o-left:before{content:"\f190"}.fa-toggle-left:before,.fa-caret-square-o-left:before{content:"\f191"}.fa-dot-circle-o:before{content:"\f192"}.fa-wheelchair:before{content:"\f193"}.fa-vimeo-square:before{content:"\f194"}.fa-turkish-lira:before,.fa-try:before{content:"\f195"}.fa-plus-square-o:before{content:"\f196"}.fa-space-shuttle:before{content:"\f197"}.fa-slack:before{content:"\f198"}.fa-envelope-square:before{content:"\f199"}.fa-wordpress:before{content:"\f19a"}.fa-openid:before{content:"\f19b"}.fa-institution:before,.fa-bank:before,.fa-university:before{content:"\f19c"}.fa-mortar-board:before,.fa-graduation-cap:before{content:"\f19d"}.fa-yahoo:before{content:"\f19e"}.fa-google:before{content:"\f1a0"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-square:before{content:"\f1a2"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-stumbleupon:before{content:"\f1a4"}.fa-delicious:before{content:"\f1a5"}.fa-digg:before{content:"\f1a6"}.fa-pied-piper:before{content:"\f1a7"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-drupal:before{content:"\f1a9"}.fa-joomla:before{content:"\f1aa"}.fa-language:before{content:"\f1ab"}.fa-fax:before{content:"\f1ac"}.fa-building:before{content:"\f1ad"}.fa-child:before{content:"\f1ae"}.fa-paw:before{content:"\f1b0"}.fa-spoon:before{content:"\f1b1"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-recycle:before{content:"\f1b8"}.fa-automobile:before,.fa-car:before{content:"\f1b9"}.fa-cab:before,.fa-taxi:before{content:"\f1ba"}.fa-tree:before{content:"\f1bb"}.fa-spotify:before{content:"\f1bc"}.fa-deviantart:before{content:"\f1bd"}.fa-soundcloud:before{content:"\f1be"}.fa-database:before{content:"\f1c0"}.fa-file-pdf-o:before{content:"\f1c1"}.fa-file-word-o:before{content:"\f1c2"}.fa-file-excel-o:before{content:"\f1c3"}.fa-file-powerpoint-o:before{content:"\f1c4"}.fa-file-photo-o:before,.fa-file-picture-o:before,.fa-file-image-o:before{content:"\f1c5"}.fa-file-zip-o:before,.fa-file-archive-o:before{content:"\f1c6"}.fa-file-sound-o:before,.fa-file-audio-o:before{content:"\f1c7"}.fa-file-movie-o:before,.fa-file-video-o:before{content:"\f1c8"}.fa-file-code-o:before{content:"\f1c9"}.fa-vine:before{content:"\f1ca"}.fa-codepen:before{content:"\f1cb"}.fa-jsfiddle:before{content:"\f1cc"}.fa-life-bouy:before,.fa-life-buoy:before,.fa-life-saver:before,.fa-support:before,.fa-life-ring:before{content:"\f1cd"}.fa-circle-o-notch:before{content:"\f1ce"}.fa-ra:before,.fa-rebel:before{content:"\f1d0"}.fa-ge:before,.fa-empire:before{content:"\f1d1"}.fa-git-square:before{content:"\f1d2"}.fa-git:before{content:"\f1d3"}.fa-y-combinator-square:before,.fa-yc-square:before,.fa-hacker-news:before{content:"\f1d4"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-qq:before{content:"\f1d6"}.fa-wechat:before,.fa-weixin:before{content:"\f1d7"}.fa-send:before,.fa-paper-plane:before{content:"\f1d8"}.fa-send-o:before,.fa-paper-plane-o:before{content:"\f1d9"}.fa-history:before{content:"\f1da"}.fa-circle-thin:before{content:"\f1db"}.fa-header:before{content:"\f1dc"}.fa-paragraph:before{content:"\f1dd"}.fa-sliders:before{content:"\f1de"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-bomb:before{content:"\f1e2"}.fa-soccer-ball-o:before,.fa-futbol-o:before{content:"\f1e3"}.fa-tty:before{content:"\f1e4"}.fa-binoculars:before{content:"\f1e5"}.fa-plug:before{content:"\f1e6"}.fa-slideshare:before{content:"\f1e7"}.fa-twitch:before{content:"\f1e8"}.fa-yelp:before{content:"\f1e9"}.fa-newspaper-o:before{content:"\f1ea"}.fa-wifi:before{content:"\f1eb"}.fa-calculator:before{content:"\f1ec"}.fa-paypal:before{content:"\f1ed"}.fa-google-wallet:before{content:"\f1ee"}.fa-cc-visa:before{content:"\f1f0"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-bell-slash:before{content:"\f1f6"}.fa-bell-slash-o:before{content:"\f1f7"}.fa-trash:before{content:"\f1f8"}.fa-copyright:before{content:"\f1f9"}.fa-at:before{content:"\f1fa"}.fa-eyedropper:before{content:"\f1fb"}.fa-paint-brush:before{content:"\f1fc"}.fa-birthday-cake:before{content:"\f1fd"}.fa-area-chart:before{content:"\f1fe"}.fa-pie-chart:before{content:"\f200"}.fa-line-chart:before{content:"\f201"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-bicycle:before{content:"\f206"}.fa-bus:before{content:"\f207"}.fa-ioxhost:before{content:"\f208"}.fa-angellist:before{content:"\f209"}.fa-cc:before{content:"\f20a"}.fa-shekel:before,.fa-sheqel:before,.fa-ils:before{content:"\f20b"}.fa-meanpath:before{content:"\f20c"}.fa-buysellads:before{content:"\f20d"}.fa-connectdevelop:before{content:"\f20e"}.fa-dashcube:before{content:"\f210"}.fa-forumbee:before{content:"\f211"}.fa-leanpub:before{content:"\f212"}.fa-sellsy:before{content:"\f213"}.fa-shirtsinbulk:before{content:"\f214"}.fa-simplybuilt:before{content:"\f215"}.fa-skyatlas:before{content:"\f216"}.fa-cart-plus:before{content:"\f217"}.fa-cart-arrow-down:before{content:"\f218"}.fa-diamond:before{content:"\f219"}.fa-ship:before{content:"\f21a"}.fa-user-secret:before{content:"\f21b"}.fa-motorcycle:before{content:"\f21c"}.fa-street-view:before{content:"\f21d"}.fa-heartbeat:before{content:"\f21e"}.fa-venus:before{content:"\f221"}.fa-mars:before{content:"\f222"}.fa-mercury:before{content:"\f223"}.fa-intersex:before,.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-venus-double:before{content:"\f226"}.fa-mars-double:before{content:"\f227"}.fa-venus-mars:before{content:"\f228"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-neuter:before{content:"\f22c"}.fa-genderless:before{content:"\f22d"}.fa-facebook-official:before{content:"\f230"}.fa-pinterest-p:before{content:"\f231"}.fa-whatsapp:before{content:"\f232"}.fa-server:before{content:"\f233"}.fa-user-plus:before{content:"\f234"}.fa-user-times:before{content:"\f235"}.fa-hotel:before,.fa-bed:before{content:"\f236"}.fa-viacoin:before{content:"\f237"}.fa-train:before{content:"\f238"}.fa-subway:before{content:"\f239"}.fa-medium:before{content:"\f23a"}.fa-yc:before,.fa-y-combinator:before{content:"\f23b"}.fa-optin-monster:before{content:"\f23c"}.fa-opencart:before{content:"\f23d"}.fa-expeditedssl:before{content:"\f23e"}.fa-battery-4:before,.fa-battery-full:before{content:"\f240"}.fa-battery-3:before,.fa-battery-three-quarters:before{content:"\f241"}.fa-battery-2:before,.fa-battery-half:before{content:"\f242"}.fa-battery-1:before,.fa-battery-quarter:before{content:"\f243"}.fa-battery-0:before,.fa-battery-empty:before{content:"\f244"}.fa-mouse-pointer:before{content:"\f245"}.fa-i-cursor:before{content:"\f246"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-sticky-note:before{content:"\f249"}.fa-sticky-note-o:before{content:"\f24a"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-diners-club:before{content:"\f24c"}.fa-clone:before{content:"\f24d"}.fa-balance-scale:before{content:"\f24e"}.fa-hourglass-o:before{content:"\f250"}.fa-hourglass-1:before,.fa-hourglass-start:before{content:"\f251"}.fa-hourglass-2:before,.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-3:before,.fa-hourglass-end:before{content:"\f253"}.fa-hourglass:before{content:"\f254"}.fa-hand-grab-o:before,.fa-hand-rock-o:before{content:"\f255"}.fa-hand-stop-o:before,.fa-hand-paper-o:before{content:"\f256"}.fa-hand-scissors-o:before{content:"\f257"}.fa-hand-lizard-o:before{content:"\f258"}.fa-hand-spock-o:before{content:"\f259"}.fa-hand-pointer-o:before{content:"\f25a"}.fa-hand-peace-o:before{content:"\f25b"}.fa-trademark:before{content:"\f25c"}.fa-registered:before{content:"\f25d"}.fa-creative-commons:before{content:"\f25e"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-tripadvisor:before{content:"\f262"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-get-pocket:before{content:"\f265"}.fa-wikipedia-w:before{content:"\f266"}.fa-safari:before{content:"\f267"}.fa-chrome:before{content:"\f268"}.fa-firefox:before{content:"\f269"}.fa-opera:before{content:"\f26a"}.fa-internet-explorer:before{content:"\f26b"}.fa-tv:before,.fa-television:before{content:"\f26c"}.fa-contao:before{content:"\f26d"}.fa-500px:before{content:"\f26e"}.fa-amazon:before{content:"\f270"}.fa-calendar-plus-o:before{content:"\f271"}.fa-calendar-minus-o:before{content:"\f272"}.fa-calendar-times-o:before{content:"\f273"}.fa-calendar-check-o:before{content:"\f274"}.fa-industry:before{content:"\f275"}.fa-map-pin:before{content:"\f276"}.fa-map-signs:before{content:"\f277"}.fa-map-o:before{content:"\f278"}.fa-map:before{content:"\f279"}.fa-commenting:before{content:"\f27a"}.fa-commenting-o:before{content:"\f27b"}.fa-houzz:before{content:"\f27c"}.fa-vimeo:before{content:"\f27d"}.fa-black-tie:before{content:"\f27e"}.fa-fonticons:before{content:"\f280"} diff --git a/lib/better-font-awesome-library/lib/fallback-font-awesome/fonts/FontAwesome.otf b/lib/better-font-awesome-library/lib/fallback-font-awesome/fonts/FontAwesome.otf index 81c9ad9..681bdd4 100755 Binary files a/lib/better-font-awesome-library/lib/fallback-font-awesome/fonts/FontAwesome.otf and b/lib/better-font-awesome-library/lib/fallback-font-awesome/fonts/FontAwesome.otf differ diff --git a/lib/better-font-awesome-library/lib/fallback-font-awesome/fonts/fontawesome-webfont.eot b/lib/better-font-awesome-library/lib/fallback-font-awesome/fonts/fontawesome-webfont.eot index 84677bc..a30335d 100755 Binary files a/lib/better-font-awesome-library/lib/fallback-font-awesome/fonts/fontawesome-webfont.eot and b/lib/better-font-awesome-library/lib/fallback-font-awesome/fonts/fontawesome-webfont.eot differ diff --git a/lib/better-font-awesome-library/lib/fallback-font-awesome/fonts/fontawesome-webfont.svg b/lib/better-font-awesome-library/lib/fallback-font-awesome/fonts/fontawesome-webfont.svg index d907b25..6fd19ab 100755 --- a/lib/better-font-awesome-library/lib/fallback-font-awesome/fonts/fontawesome-webfont.svg +++ b/lib/better-font-awesome-library/lib/fallback-font-awesome/fonts/fontawesome-webfont.svg @@ -1,6 +1,6 @@ - + @@ -147,14 +147,14 @@ - + - + @@ -275,7 +275,7 @@ - + @@ -399,7 +399,7 @@ - + @@ -411,8 +411,8 @@ - - + + @@ -438,7 +438,7 @@ - + @@ -459,7 +459,7 @@ - + @@ -483,13 +483,13 @@ - + - + @@ -513,8 +513,128 @@ - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/lib/better-font-awesome-library/lib/fallback-font-awesome/fonts/fontawesome-webfont.ttf b/lib/better-font-awesome-library/lib/fallback-font-awesome/fonts/fontawesome-webfont.ttf index 96a3639..d7994e1 100755 Binary files a/lib/better-font-awesome-library/lib/fallback-font-awesome/fonts/fontawesome-webfont.ttf and b/lib/better-font-awesome-library/lib/fallback-font-awesome/fonts/fontawesome-webfont.ttf differ diff --git a/lib/better-font-awesome-library/lib/fallback-font-awesome/fonts/fontawesome-webfont.woff b/lib/better-font-awesome-library/lib/fallback-font-awesome/fonts/fontawesome-webfont.woff index 628b6a5..6fd4ede 100755 Binary files a/lib/better-font-awesome-library/lib/fallback-font-awesome/fonts/fontawesome-webfont.woff and b/lib/better-font-awesome-library/lib/fallback-font-awesome/fonts/fontawesome-webfont.woff differ diff --git a/lib/better-font-awesome-library/lib/fallback-font-awesome/fonts/fontawesome-webfont.woff2 b/lib/better-font-awesome-library/lib/fallback-font-awesome/fonts/fontawesome-webfont.woff2 new file mode 100755 index 0000000..5560193 Binary files /dev/null and b/lib/better-font-awesome-library/lib/fallback-font-awesome/fonts/fontawesome-webfont.woff2 differ diff --git a/lib/better-font-awesome-library/lib/fallback-font-awesome/package.json b/lib/better-font-awesome-library/lib/fallback-font-awesome/package.json index e7c8233..bd1c197 100755 --- a/lib/better-font-awesome-library/lib/fallback-font-awesome/package.json +++ b/lib/better-font-awesome-library/lib/fallback-font-awesome/package.json @@ -1,7 +1,8 @@ { "name": "font-awesome", "description": "The iconic font and CSS framework", - "version": "4.2.0", + "version": "4.4.0", + "style": "css/font-awesome.css", "keywords": ["font", "awesome", "fontawesome", "icon", "font", "bootstrap"], "homepage": "http://fontawesome.io/", "bugs": { @@ -30,16 +31,7 @@ "web": "http://twitter.com/supercodepoet" } ], - "licenses": [ - { - "type": "OFL-1.1", - "url": "http://scripts.sil.org/OFL" - }, - { - "type": "MIT", - "url": "http://opensource.org/licenses/mit-license.html" - } - ], + "license": "OFL-1.1 AND MIT", "dependencies": { }, "engines" : { diff --git a/lib/better-font-awesome-library/lib/fontawesome-iconpicker/css/fontawesome-iconpicker.css b/lib/better-font-awesome-library/lib/fontawesome-iconpicker/css/fontawesome-iconpicker.css new file mode 100755 index 0000000..96377ad --- /dev/null +++ b/lib/better-font-awesome-library/lib/fontawesome-iconpicker/css/fontawesome-iconpicker.css @@ -0,0 +1,326 @@ +/*! + * Font Awesome Icon Picker + * http://mjolnic.github.io/fontawesome-iconpicker/ + * + * Originally written by (c) 2014 Javier Aguilar @mjolnic + * Licensed under the MIT License + * https://github.com/mjolnic/fontawesome-iconpicker/blob/master/LICENSE + * + */ +/* + * Font Awesome Icon Picker + * http://mjolnic.github.io/fontawesome-iconpicker/ + * + * Originally written by (c) 2014 Javier Aguilar @mjolnic + * Licensed under the MIT License + * https://github.com/mjolnic/fontawesome-iconpicker/blob/master/LICENSE + * + */ +/* + * Font Awesome Icon Picker + * http://mjolnic.github.io/fontawesome-iconpicker/ + * + * Originally written by (c) 2014 Javier Aguilar @mjolnic + * Licensed under the MIT License + * https://github.com/mjolnic/fontawesome-iconpicker/blob/master/LICENSE + * + */ +.iconpicker-popover.popover { + position: absolute; + top: 0; + left: 0; + display: none; + max-width: none; + padding: 1px; + text-align: left; + width: 242px; + background: #f7f7f7; +} +.iconpicker-popover.popover.top, +.iconpicker-popover.popover.topLeftCorner, +.iconpicker-popover.popover.topLeft, +.iconpicker-popover.popover.topRight, +.iconpicker-popover.popover.topRightCorner { + margin-top: -10px; +} +.iconpicker-popover.popover.right, +.iconpicker-popover.popover.rightTop, +.iconpicker-popover.popover.rightBottom { + margin-left: 10px; +} +.iconpicker-popover.popover.bottom, +.iconpicker-popover.popover.bottomRightCorner, +.iconpicker-popover.popover.bottomRight, +.iconpicker-popover.popover.bottomLeft, +.iconpicker-popover.popover.bottomLeftCorner { + margin-top: 10px; +} +.iconpicker-popover.popover.left, +.iconpicker-popover.popover.leftBottom, +.iconpicker-popover.popover.leftTop { + margin-left: -10px; +} +.iconpicker-popover.popover.inline { + margin: 0 0 14px 0; + position: relative; + display: inline-block; + opacity: 1; + top: auto; + left: auto; + bottom: auto; + right: auto; + max-width: 100%; + box-shadow: none; + z-index: auto; + vertical-align: top; +} +.iconpicker-popover.popover.inline > .arrow { + display: none; +} +.dropdown-menu .iconpicker-popover.inline { + margin: 0; + border: none; +} +.dropdown-menu.iconpicker-container { + padding: 0; +} +.iconpicker-popover.popover .popover-title { + padding: 14px; + font-size: 14px; + line-height: 16px; + border-bottom: 1px solid #ebebeb; + background-color: #f7f7f7; +} +.iconpicker-popover.popover .popover-title input[type=search].iconpicker-search { + margin: 0 0 2px 0; +} +.iconpicker-popover.popover .popover-title-text ~ input[type=search].iconpicker-search { + margin-top: 14px; +} +.iconpicker-popover.popover .popover-content { + padding: 0px; + text-align: center; +} +.iconpicker-popover .popover-footer { + float: none; + clear: both; + padding: 14px; + text-align: right; + margin: 0; + border-top: 1px solid #ebebeb; + background-color: #f7f7f7; +} +.iconpicker-popover .popover-footer:before, +.iconpicker-popover .popover-footer:after { + content: " "; + display: table; +} +.iconpicker-popover .popover-footer:after { + clear: both; +} +.iconpicker-popover .popover-footer .iconpicker-btn { + margin-left: 10px; +} +.iconpicker-popover .popover-footer input[type=search].iconpicker-search { + /*width:auto; + float:left;*/ + margin-bottom: 14px; +} +.iconpicker-popover.popover > .arrow, +.iconpicker-popover.popover > .arrow:after { + position: absolute; + display: block; + width: 0; + height: 0; + border-color: transparent; + border-style: solid; +} +.iconpicker-popover.popover > .arrow { + border-width: 11px; +} +.iconpicker-popover.popover > .arrow:after { + border-width: 10px; + content: ""; +} +.iconpicker-popover.popover.top > .arrow, +.iconpicker-popover.popover.topLeft > .arrow, +.iconpicker-popover.popover.topRight > .arrow { + left: 50%; + margin-left: -11px; + border-bottom-width: 0; + border-top-color: #999999; + border-top-color: rgba(0, 0, 0, 0.25); + bottom: -11px; +} +.iconpicker-popover.popover.top > .arrow:after, +.iconpicker-popover.popover.topLeft > .arrow:after, +.iconpicker-popover.popover.topRight > .arrow:after { + content: " "; + bottom: 1px; + margin-left: -10px; + border-bottom-width: 0; + border-top-color: #ffffff; +} +.iconpicker-popover.popover.topLeft > .arrow { + left: 14px; + margin-left: 0; +} +.iconpicker-popover.popover.topRight > .arrow { + left: auto; + right: 14px; + margin-left: 0; +} +.iconpicker-popover.popover.right > .arrow, +.iconpicker-popover.popover.rightTop > .arrow, +.iconpicker-popover.popover.rightBottom > .arrow { + top: 50%; + left: -11px; + margin-top: -11px; + border-left-width: 0; + border-right-color: #999999; + border-right-color: rgba(0, 0, 0, 0.25); +} +.iconpicker-popover.popover.right > .arrow:after, +.iconpicker-popover.popover.rightTop > .arrow:after, +.iconpicker-popover.popover.rightBottom > .arrow:after { + content: " "; + left: 1px; + bottom: -10px; + border-left-width: 0; + border-right-color: #ffffff; +} +.iconpicker-popover.popover.rightTop > .arrow { + top: auto; + bottom: 14px; + margin-top: 0; +} +.iconpicker-popover.popover.rightBottom > .arrow { + top: 14px; + margin-top: 0; +} +.iconpicker-popover.popover.bottom > .arrow, +.iconpicker-popover.popover.bottomRight > .arrow, +.iconpicker-popover.popover.bottomLeft > .arrow { + left: 50%; + margin-left: -11px; + border-top-width: 0; + border-bottom-color: #999999; + border-bottom-color: rgba(0, 0, 0, 0.25); + top: -11px; +} +.iconpicker-popover.popover.bottom > .arrow:after, +.iconpicker-popover.popover.bottomRight > .arrow:after, +.iconpicker-popover.popover.bottomLeft > .arrow:after { + content: " "; + top: 1px; + margin-left: -10px; + border-top-width: 0; + border-bottom-color: #ffffff; +} +.iconpicker-popover.popover.bottomLeft > .arrow { + left: 14px; + margin-left: 0; +} +.iconpicker-popover.popover.bottomRight > .arrow { + left: auto; + right: 14px; + margin-left: 0; +} +.iconpicker-popover.popover.left > .arrow, +.iconpicker-popover.popover.leftBottom > .arrow, +.iconpicker-popover.popover.leftTop > .arrow { + top: 50%; + right: -11px; + margin-top: -11px; + border-right-width: 0; + border-left-color: #999999; + border-left-color: rgba(0, 0, 0, 0.25); +} +.iconpicker-popover.popover.left > .arrow:after, +.iconpicker-popover.popover.leftBottom > .arrow:after, +.iconpicker-popover.popover.leftTop > .arrow:after { + content: " "; + right: 1px; + border-right-width: 0; + border-left-color: #ffffff; + bottom: -10px; +} +.iconpicker-popover.popover.leftBottom > .arrow { + top: 14px; + margin-top: 0; +} +.iconpicker-popover.popover.leftTop > .arrow { + top: auto; + bottom: 14px; + margin-top: 0; +} +.iconpicker { + position: relative; + text-align: left; + text-shadow: none; + line-height: 0; + display: block; + margin: 0; + overflow: hidden; +} +.iconpicker * { + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; + position: relative; +} +.iconpicker:before, +.iconpicker:after { + content: " "; + display: table; +} +.iconpicker:after { + clear: both; +} +.iconpicker .iconpicker-items { + position: relative; + clear: both; + float: none; + padding: 14px 0 0 14px; + background: #fff; + margin: 0; + overflow: hidden; + overflow-y: auto; + min-height: 55px; + max-height: 275px; +} +.iconpicker .iconpicker-items:before, +.iconpicker .iconpicker-items:after { + content: " "; + display: table; +} +.iconpicker .iconpicker-items:after { + clear: both; +} +.iconpicker .iconpicker-item { + float: left; + width: 14px; + height: 14px; + padding: 14px; + margin: 0 14px 14px 0; + text-align: center; + cursor: pointer; + border-radius: 3px; + font-size: 14px; + box-shadow: 0 0 0 1px #dddddd; + /*&:nth-child(4n+4) { + margin-right: 0; + } + &:nth-last-child(-n+4) { + margin-bottom: 0; + }*/ +} +.iconpicker .iconpicker-item:hover:not(.iconpicker-selected) { + background-color: #eeeeee; +} +.iconpicker .iconpicker-item.iconpicker-selected { + box-shadow: none; +} +.iconpicker-component { + cursor: pointer; +} diff --git a/lib/better-font-awesome-library/lib/fontawesome-iconpicker/css/fontawesome-iconpicker.min.css b/lib/better-font-awesome-library/lib/fontawesome-iconpicker/css/fontawesome-iconpicker.min.css new file mode 100755 index 0000000..7882624 --- /dev/null +++ b/lib/better-font-awesome-library/lib/fontawesome-iconpicker/css/fontawesome-iconpicker.min.css @@ -0,0 +1,9 @@ +/*! + * Font Awesome Icon Picker + * http://mjolnic.github.io/fontawesome-iconpicker/ + * + * Originally written by (c) 2014 Javier Aguilar @mjolnic + * Licensed under the MIT License + * https://github.com/mjolnic/fontawesome-iconpicker/blob/master/LICENSE + * + */.iconpicker-popover.popover{position:absolute;top:0;left:0;display:none;max-width:none;padding:1px;text-align:left;width:242px;background:#f7f7f7}.iconpicker-popover.popover.top,.iconpicker-popover.popover.topLeftCorner,.iconpicker-popover.popover.topLeft,.iconpicker-popover.popover.topRight,.iconpicker-popover.popover.topRightCorner{margin-top:-10px}.iconpicker-popover.popover.right,.iconpicker-popover.popover.rightTop,.iconpicker-popover.popover.rightBottom{margin-left:10px}.iconpicker-popover.popover.bottom,.iconpicker-popover.popover.bottomRightCorner,.iconpicker-popover.popover.bottomRight,.iconpicker-popover.popover.bottomLeft,.iconpicker-popover.popover.bottomLeftCorner{margin-top:10px}.iconpicker-popover.popover.left,.iconpicker-popover.popover.leftBottom,.iconpicker-popover.popover.leftTop{margin-left:-10px}.iconpicker-popover.popover.inline{margin:0 0 14px 0;position:relative;display:inline-block;opacity:1;top:auto;left:auto;bottom:auto;right:auto;max-width:100%;box-shadow:none;z-index:auto;vertical-align:top}.iconpicker-popover.popover.inline>.arrow{display:none}.dropdown-menu .iconpicker-popover.inline{margin:0;border:none}.dropdown-menu.iconpicker-container{padding:0}.iconpicker-popover.popover .popover-title{padding:14px;font-size:14px;line-height:16px;border-bottom:1px solid #ebebeb;background-color:#f7f7f7}.iconpicker-popover.popover .popover-title input[type=search].iconpicker-search{margin:0 0 2px 0}.iconpicker-popover.popover .popover-title-text~input[type=search].iconpicker-search{margin-top:14px}.iconpicker-popover.popover .popover-content{padding:0px;text-align:center}.iconpicker-popover .popover-footer{float:none;clear:both;padding:14px;text-align:right;margin:0;border-top:1px solid #ebebeb;background-color:#f7f7f7}.iconpicker-popover .popover-footer:before,.iconpicker-popover .popover-footer:after{content:" ";display:table}.iconpicker-popover .popover-footer:after{clear:both}.iconpicker-popover .popover-footer .iconpicker-btn{margin-left:10px}.iconpicker-popover .popover-footer input[type=search].iconpicker-search{margin-bottom:14px}.iconpicker-popover.popover>.arrow,.iconpicker-popover.popover>.arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.iconpicker-popover.popover>.arrow{border-width:11px}.iconpicker-popover.popover>.arrow:after{border-width:10px;content:""}.iconpicker-popover.popover.top>.arrow,.iconpicker-popover.popover.topLeft>.arrow,.iconpicker-popover.popover.topRight>.arrow{left:50%;margin-left:-11px;border-bottom-width:0;border-top-color:#999;border-top-color:rgba(0,0,0,0.25);bottom:-11px}.iconpicker-popover.popover.top>.arrow:after,.iconpicker-popover.popover.topLeft>.arrow:after,.iconpicker-popover.popover.topRight>.arrow:after{content:" ";bottom:1px;margin-left:-10px;border-bottom-width:0;border-top-color:#fff}.iconpicker-popover.popover.topLeft>.arrow{left:14px;margin-left:0}.iconpicker-popover.popover.topRight>.arrow{left:auto;right:14px;margin-left:0}.iconpicker-popover.popover.right>.arrow,.iconpicker-popover.popover.rightTop>.arrow,.iconpicker-popover.popover.rightBottom>.arrow{top:50%;left:-11px;margin-top:-11px;border-left-width:0;border-right-color:#999;border-right-color:rgba(0,0,0,0.25)}.iconpicker-popover.popover.right>.arrow:after,.iconpicker-popover.popover.rightTop>.arrow:after,.iconpicker-popover.popover.rightBottom>.arrow:after{content:" ";left:1px;bottom:-10px;border-left-width:0;border-right-color:#fff}.iconpicker-popover.popover.rightTop>.arrow{top:auto;bottom:14px;margin-top:0}.iconpicker-popover.popover.rightBottom>.arrow{top:14px;margin-top:0}.iconpicker-popover.popover.bottom>.arrow,.iconpicker-popover.popover.bottomRight>.arrow,.iconpicker-popover.popover.bottomLeft>.arrow{left:50%;margin-left:-11px;border-top-width:0;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,0.25);top:-11px}.iconpicker-popover.popover.bottom>.arrow:after,.iconpicker-popover.popover.bottomRight>.arrow:after,.iconpicker-popover.popover.bottomLeft>.arrow:after{content:" ";top:1px;margin-left:-10px;border-top-width:0;border-bottom-color:#fff}.iconpicker-popover.popover.bottomLeft>.arrow{left:14px;margin-left:0}.iconpicker-popover.popover.bottomRight>.arrow{left:auto;right:14px;margin-left:0}.iconpicker-popover.popover.left>.arrow,.iconpicker-popover.popover.leftBottom>.arrow,.iconpicker-popover.popover.leftTop>.arrow{top:50%;right:-11px;margin-top:-11px;border-right-width:0;border-left-color:#999;border-left-color:rgba(0,0,0,0.25)}.iconpicker-popover.popover.left>.arrow:after,.iconpicker-popover.popover.leftBottom>.arrow:after,.iconpicker-popover.popover.leftTop>.arrow:after{content:" ";right:1px;border-right-width:0;border-left-color:#fff;bottom:-10px}.iconpicker-popover.popover.leftBottom>.arrow{top:14px;margin-top:0}.iconpicker-popover.popover.leftTop>.arrow{top:auto;bottom:14px;margin-top:0}.iconpicker{position:relative;text-align:left;text-shadow:none;line-height:0;display:block;margin:0;overflow:hidden}.iconpicker *{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;position:relative}.iconpicker:before,.iconpicker:after{content:" ";display:table}.iconpicker:after{clear:both}.iconpicker .iconpicker-items{position:relative;clear:both;float:none;padding:14px 0 0 14px;background:#fff;margin:0;overflow:hidden;overflow-y:auto;min-height:55px;max-height:275px}.iconpicker .iconpicker-items:before,.iconpicker .iconpicker-items:after{content:" ";display:table}.iconpicker .iconpicker-items:after{clear:both}.iconpicker .iconpicker-item{float:left;width:14px;height:14px;padding:14px;margin:0 14px 14px 0;text-align:center;cursor:pointer;border-radius:3px;font-size:14px;box-shadow:0 0 0 1px #ddd}.iconpicker .iconpicker-item:hover:not(.iconpicker-selected){background-color:#eee}.iconpicker .iconpicker-item.iconpicker-selected{box-shadow:none}.iconpicker-component{cursor:pointer} \ No newline at end of file diff --git a/lib/better-font-awesome-library/lib/fontawesome-iconpicker/js/fontawesome-iconpicker.js b/lib/better-font-awesome-library/lib/fontawesome-iconpicker/js/fontawesome-iconpicker.js new file mode 100644 index 0000000..a6af334 --- /dev/null +++ b/lib/better-font-awesome-library/lib/fontawesome-iconpicker/js/fontawesome-iconpicker.js @@ -0,0 +1,1014 @@ +(function(a, b) { + a.ui = a.ui || {}; + var c, d = Math.max, e = Math.abs, f = Math.round, g = /left|center|right/, h = /top|center|bottom/, i = /[\+\-]\d+(\.[\d]+)?%?/, j = /^\w+/, k = /%$/, l = a.fn.pos; + function m(a, b, c) { + return [ parseFloat(a[0]) * (k.test(a[0]) ? b / 100 : 1), parseFloat(a[1]) * (k.test(a[1]) ? c / 100 : 1) ]; + } + function n(b, c) { + return parseInt(a.css(b, c), 10) || 0; + } + function o(b) { + var c = b[0]; + if (c.nodeType === 9) { + return { + width: b.width(), + height: b.height(), + offset: { + top: 0, + left: 0 + } + }; + } + if (a.isWindow(c)) { + return { + width: b.width(), + height: b.height(), + offset: { + top: b.scrollTop(), + left: b.scrollLeft() + } + }; + } + if (c.preventDefault) { + return { + width: 0, + height: 0, + offset: { + top: c.pageY, + left: c.pageX + } + }; + } + return { + width: b.outerWidth(), + height: b.outerHeight(), + offset: b.offset() + }; + } + a.pos = { + scrollbarWidth: function() { + if (c !== b) { + return c; + } + var d, e, f = a("

"), g = f.children()[0]; + a("body").append(f); + d = g.offsetWidth; + f.css("overflow", "scroll"); + e = g.offsetWidth; + if (d === e) { + e = f[0].clientWidth; + } + f.remove(); + return c = d - e; + }, + getScrollInfo: function(b) { + var c = b.isWindow || b.isDocument ? "" : b.element.css("overflow-x"), d = b.isWindow || b.isDocument ? "" : b.element.css("overflow-y"), e = c === "scroll" || c === "auto" && b.width < b.element[0].scrollWidth, f = d === "scroll" || d === "auto" && b.height < b.element[0].scrollHeight; + return { + width: f ? a.pos.scrollbarWidth() : 0, + height: e ? a.pos.scrollbarWidth() : 0 + }; + }, + getWithinInfo: function(b) { + var c = a(b || window), d = a.isWindow(c[0]), e = !!c[0] && c[0].nodeType === 9; + return { + element: c, + isWindow: d, + isDocument: e, + offset: c.offset() || { + left: 0, + top: 0 + }, + scrollLeft: c.scrollLeft(), + scrollTop: c.scrollTop(), + width: d ? c.width() : c.outerWidth(), + height: d ? c.height() : c.outerHeight() + }; + } + }; + a.fn.pos = function(b) { + if (!b || !b.of) { + return l.apply(this, arguments); + } + b = a.extend({}, b); + var c, k, p, q, r, s, t = a(b.of), u = a.pos.getWithinInfo(b.within), v = a.pos.getScrollInfo(u), w = (b.collision || "flip").split(" "), x = {}; + s = o(t); + if (t[0].preventDefault) { + b.at = "left top"; + } + k = s.width; + p = s.height; + q = s.offset; + r = a.extend({}, q); + a.each([ "my", "at" ], function() { + var a = (b[this] || "").split(" "), c, d; + if (a.length === 1) { + a = g.test(a[0]) ? a.concat([ "center" ]) : h.test(a[0]) ? [ "center" ].concat(a) : [ "center", "center" ]; + } + a[0] = g.test(a[0]) ? a[0] : "center"; + a[1] = h.test(a[1]) ? a[1] : "center"; + c = i.exec(a[0]); + d = i.exec(a[1]); + x[this] = [ c ? c[0] : 0, d ? d[0] : 0 ]; + b[this] = [ j.exec(a[0])[0], j.exec(a[1])[0] ]; + }); + if (w.length === 1) { + w[1] = w[0]; + } + if (b.at[0] === "right") { + r.left += k; + } else if (b.at[0] === "center") { + r.left += k / 2; + } + if (b.at[1] === "bottom") { + r.top += p; + } else if (b.at[1] === "center") { + r.top += p / 2; + } + c = m(x.at, k, p); + r.left += c[0]; + r.top += c[1]; + return this.each(function() { + var g, h, i = a(this), j = i.outerWidth(), l = i.outerHeight(), o = n(this, "marginLeft"), s = n(this, "marginTop"), y = j + o + n(this, "marginRight") + v.width, z = l + s + n(this, "marginBottom") + v.height, A = a.extend({}, r), B = m(x.my, i.outerWidth(), i.outerHeight()); + if (b.my[0] === "right") { + A.left -= j; + } else if (b.my[0] === "center") { + A.left -= j / 2; + } + if (b.my[1] === "bottom") { + A.top -= l; + } else if (b.my[1] === "center") { + A.top -= l / 2; + } + A.left += B[0]; + A.top += B[1]; + if (!a.support.offsetFractions) { + A.left = f(A.left); + A.top = f(A.top); + } + g = { + marginLeft: o, + marginTop: s + }; + a.each([ "left", "top" ], function(d, e) { + if (a.ui.pos[w[d]]) { + a.ui.pos[w[d]][e](A, { + targetWidth: k, + targetHeight: p, + elemWidth: j, + elemHeight: l, + collisionPosition: g, + collisionWidth: y, + collisionHeight: z, + offset: [ c[0] + B[0], c[1] + B[1] ], + my: b.my, + at: b.at, + within: u, + elem: i + }); + } + }); + if (b.using) { + h = function(a) { + var c = q.left - A.left, f = c + k - j, g = q.top - A.top, h = g + p - l, m = { + target: { + element: t, + left: q.left, + top: q.top, + width: k, + height: p + }, + element: { + element: i, + left: A.left, + top: A.top, + width: j, + height: l + }, + horizontal: f < 0 ? "left" : c > 0 ? "right" : "center", + vertical: h < 0 ? "top" : g > 0 ? "bottom" : "middle" + }; + if (k < j && e(c + f) < k) { + m.horizontal = "center"; + } + if (p < l && e(g + h) < p) { + m.vertical = "middle"; + } + if (d(e(c), e(f)) > d(e(g), e(h))) { + m.important = "horizontal"; + } else { + m.important = "vertical"; + } + b.using.call(this, a, m); + }; + } + i.offset(a.extend(A, { + using: h + })); + }); + }; + a.ui.pos = { + _trigger: function(a, b, c, d) { + if (b.elem) { + b.elem.trigger({ + type: c, + position: a, + positionData: b, + triggered: d + }); + } + }, + fit: { + left: function(b, c) { + a.ui.pos._trigger(b, c, "posCollide", "fitLeft"); + var e = c.within, f = e.isWindow ? e.scrollLeft : e.offset.left, g = e.width, h = b.left - c.collisionPosition.marginLeft, i = f - h, j = h + c.collisionWidth - g - f, k; + if (c.collisionWidth > g) { + if (i > 0 && j <= 0) { + k = b.left + i + c.collisionWidth - g - f; + b.left += i - k; + } else if (j > 0 && i <= 0) { + b.left = f; + } else { + if (i > j) { + b.left = f + g - c.collisionWidth; + } else { + b.left = f; + } + } + } else if (i > 0) { + b.left += i; + } else if (j > 0) { + b.left -= j; + } else { + b.left = d(b.left - h, b.left); + } + a.ui.pos._trigger(b, c, "posCollided", "fitLeft"); + }, + top: function(b, c) { + a.ui.pos._trigger(b, c, "posCollide", "fitTop"); + var e = c.within, f = e.isWindow ? e.scrollTop : e.offset.top, g = c.within.height, h = b.top - c.collisionPosition.marginTop, i = f - h, j = h + c.collisionHeight - g - f, k; + if (c.collisionHeight > g) { + if (i > 0 && j <= 0) { + k = b.top + i + c.collisionHeight - g - f; + b.top += i - k; + } else if (j > 0 && i <= 0) { + b.top = f; + } else { + if (i > j) { + b.top = f + g - c.collisionHeight; + } else { + b.top = f; + } + } + } else if (i > 0) { + b.top += i; + } else if (j > 0) { + b.top -= j; + } else { + b.top = d(b.top - h, b.top); + } + a.ui.pos._trigger(b, c, "posCollided", "fitTop"); + } + }, + flip: { + left: function(b, c) { + a.ui.pos._trigger(b, c, "posCollide", "flipLeft"); + var d = c.within, f = d.offset.left + d.scrollLeft, g = d.width, h = d.isWindow ? d.scrollLeft : d.offset.left, i = b.left - c.collisionPosition.marginLeft, j = i - h, k = i + c.collisionWidth - g - h, l = c.my[0] === "left" ? -c.elemWidth : c.my[0] === "right" ? c.elemWidth : 0, m = c.at[0] === "left" ? c.targetWidth : c.at[0] === "right" ? -c.targetWidth : 0, n = -2 * c.offset[0], o, p; + if (j < 0) { + o = b.left + l + m + n + c.collisionWidth - g - f; + if (o < 0 || o < e(j)) { + b.left += l + m + n; + } + } else if (k > 0) { + p = b.left - c.collisionPosition.marginLeft + l + m + n - h; + if (p > 0 || e(p) < k) { + b.left += l + m + n; + } + } + a.ui.pos._trigger(b, c, "posCollided", "flipLeft"); + }, + top: function(b, c) { + a.ui.pos._trigger(b, c, "posCollide", "flipTop"); + var d = c.within, f = d.offset.top + d.scrollTop, g = d.height, h = d.isWindow ? d.scrollTop : d.offset.top, i = b.top - c.collisionPosition.marginTop, j = i - h, k = i + c.collisionHeight - g - h, l = c.my[1] === "top", m = l ? -c.elemHeight : c.my[1] === "bottom" ? c.elemHeight : 0, n = c.at[1] === "top" ? c.targetHeight : c.at[1] === "bottom" ? -c.targetHeight : 0, o = -2 * c.offset[1], p, q; + if (j < 0) { + q = b.top + m + n + o + c.collisionHeight - g - f; + if (b.top + m + n + o > j && (q < 0 || q < e(j))) { + b.top += m + n + o; + } + } else if (k > 0) { + p = b.top - c.collisionPosition.marginTop + m + n + o - h; + if (b.top + m + n + o > k && (p > 0 || e(p) < k)) { + b.top += m + n + o; + } + } + a.ui.pos._trigger(b, c, "posCollided", "flipTop"); + } + }, + flipfit: { + left: function() { + a.ui.pos.flip.left.apply(this, arguments); + a.ui.pos.fit.left.apply(this, arguments); + }, + top: function() { + a.ui.pos.flip.top.apply(this, arguments); + a.ui.pos.fit.top.apply(this, arguments); + } + } + }; + (function() { + var b, c, d, e, f, g = document.getElementsByTagName("body")[0], h = document.createElement("div"); + b = document.createElement(g ? "div" : "body"); + d = { + visibility: "hidden", + width: 0, + height: 0, + border: 0, + margin: 0, + background: "none" + }; + if (g) { + a.extend(d, { + position: "absolute", + left: "-1000px", + top: "-1000px" + }); + } + for (f in d) { + b.style[f] = d[f]; + } + b.appendChild(h); + c = g || document.documentElement; + c.insertBefore(b, c.firstChild); + h.style.cssText = "position: absolute; left: 10.7432222px;"; + e = a(h).offset().left; + a.support.offsetFractions = e > 10 && e < 11; + b.innerHTML = ""; + c.removeChild(b); + })(); +})(jQuery); + +(function(a) { + "use strict"; + if (typeof define === "function" && define.amd) { + define([ "jquery" ], a); + } else if (window.jQuery && !window.jQuery.fn.iconpicker) { + a(window.jQuery); + } +})(function(a) { + "use strict"; + var b = { + isEmpty: function(a) { + return a === false || a === "" || a === null || a === undefined; + }, + isEmptyObject: function(a) { + return this.isEmpty(a) === true || a.length === 0; + }, + isElement: function(b) { + return a(b).length > 0; + }, + isString: function(a) { + return typeof a === "string" || a instanceof String; + }, + isArray: function(b) { + return a.isArray(b); + }, + inArray: function(b, c) { + return a.inArray(b, c) !== -1; + }, + throwError: function(a) { + throw "Font Awesome Icon Picker Exception: " + a; + } + }; + var c = function(d, e) { + this._id = c._idCounter++; + this.element = a(d).addClass("iconpicker-element"); + this._trigger("iconpickerCreate"); + this.options = a.extend({}, c.defaultOptions, this.element.data(), e); + this.options.templates = a.extend({}, c.defaultOptions.templates, this.options.templates); + this.options.originalPlacement = this.options.placement; + this.container = b.isElement(this.options.container) ? a(this.options.container) : false; + if (this.container === false) { + if (this.element.is(".dropdown-toggle")) { + this.container = a("~ .dropdown-menu:first", this.element); + } else { + this.container = this.element.is("input,textarea,button,.btn") ? this.element.parent() : this.element; + } + } + this.container.addClass("iconpicker-container"); + if (this.isDropdownMenu()) { + this.options.templates.search = false; + this.options.templates.buttons = false; + this.options.placement = "inline"; + } + this.input = this.element.is("input,textarea") ? this.element.addClass("iconpicker-input") : false; + if (this.input === false) { + this.input = this.container.find(this.options.input); + if (!this.input.is("input,textarea")) { + this.input = false; + } + } + this.component = this.isDropdownMenu() ? this.container.parent().find(this.options.component) : this.container.find(this.options.component); + if (this.component.length === 0) { + this.component = false; + } else { + this.component.find("i").addClass("iconpicker-component"); + } + this._createPopover(); + this._createIconpicker(); + if (this.getAcceptButton().length === 0) { + this.options.mustAccept = false; + } + if (this.isInputGroup()) { + this.container.parent().append(this.popover); + } else { + this.container.append(this.popover); + } + this._bindElementEvents(); + this._bindWindowEvents(); + this.update(this.options.selected); + if (this.isInline()) { + this.show(); + } + this._trigger("iconpickerCreated"); + }; + c._idCounter = 0; + c.defaultOptions = { + title: false, + selected: false, + defaultValue: false, + placement: "bottom", + collision: "none", + animation: true, + hideOnSelect: false, + showFooter: false, + searchInFooter: false, + mustAccept: false, + selectedCustomClass: "bg-primary", + icons: [], + fullClassFormatter: function(a) { + return "fa " + a; + }, + input: "input,.iconpicker-input", + inputSearch: false, + container: false, + component: ".input-group-addon,.iconpicker-component", + templates: { + popover: '
' + '
', + footer: '', + buttons: '' + ' ', + search: '', + iconpicker: '
', + iconpickerItem: '' + } + }; + c.batch = function(b, c) { + var d = Array.prototype.slice.call(arguments, 2); + return a(b).each(function() { + var b = a(this).data("iconpicker"); + if (!!b) { + b[c].apply(b, d); + } + }); + }; + c.prototype = { + constructor: c, + options: {}, + _id: 0, + _trigger: function(b, c) { + c = c || {}; + this.element.trigger(a.extend({ + type: b, + iconpickerInstance: this + }, c)); + }, + _createPopover: function() { + this.popover = a(this.options.templates.popover); + var c = this.popover.find(".popover-title"); + if (!!this.options.title) { + c.append(a('
' + this.options.title + "
")); + } + if (this.hasSeparatedSearchInput() && !this.options.searchInFooter) { + c.append(this.options.templates.search); + } else if (!this.options.title) { + c.remove(); + } + if (this.options.showFooter && !b.isEmpty(this.options.templates.footer)) { + var d = a(this.options.templates.footer); + if (this.hasSeparatedSearchInput() && this.options.searchInFooter) { + d.append(a(this.options.templates.search)); + } + if (!b.isEmpty(this.options.templates.buttons)) { + d.append(a(this.options.templates.buttons)); + } + this.popover.append(d); + } + if (this.options.animation === true) { + this.popover.addClass("fade"); + } + return this.popover; + }, + _createIconpicker: function() { + var b = this; + this.iconpicker = a(this.options.templates.iconpicker); + var c = function(c) { + var d = a(this); + if (d.is("i")) { + d = d.parent(); + } + b._trigger("iconpickerSelect", { + iconpickerItem: d, + iconpickerValue: b.iconpickerValue + }); + if (b.options.mustAccept === false) { + b.update(d.data("iconpickerValue")); + b._trigger("iconpickerSelected", { + iconpickerItem: this, + iconpickerValue: b.iconpickerValue + }); + } else { + b.update(d.data("iconpickerValue"), true); + } + if (b.options.hideOnSelect && b.options.mustAccept === false) { + b.hide(); + } + c.preventDefault(); + return false; + }; + for (var d in this.options.icons) { + var e = a(this.options.templates.iconpickerItem); + e.find("i").addClass(this.options.fullClassFormatter(this.options.icons[d])); + e.data("iconpickerValue", this.options.icons[d]).on("click.iconpicker", c); + this.iconpicker.find(".iconpicker-items").append(e.attr("title", "." + this.options.icons[d])); + } + this.popover.find(".popover-content").append(this.iconpicker); + return this.iconpicker; + }, + _isEventInsideIconpicker: function(b) { + var c = a(b.target); + if ((!c.hasClass("iconpicker-element") || c.hasClass("iconpicker-element") && !c.is(this.element)) && c.parents(".iconpicker-popover").length === 0) { + return false; + } + return true; + }, + _bindElementEvents: function() { + var c = this; + this.getSearchInput().on("keyup.iconpicker", function() { + c.filter(a(this).val().toLowerCase()); + }); + this.getAcceptButton().on("click.iconpicker", function() { + var a = c.iconpicker.find(".iconpicker-selected").get(0); + c.update(c.iconpickerValue); + c._trigger("iconpickerSelected", { + iconpickerItem: a, + iconpickerValue: c.iconpickerValue + }); + if (!c.isInline()) { + c.hide(); + } + }); + this.getCancelButton().on("click.iconpicker", function() { + if (!c.isInline()) { + c.hide(); + } + }); + this.element.on("focus.iconpicker", function(a) { + c.show(); + a.stopPropagation(); + }); + if (this.hasComponent()) { + this.component.on("click.iconpicker", function() { + c.toggle(); + }); + } + if (this.hasInput()) { + this.input.on("keyup.iconpicker", function(d) { + if (!b.inArray(d.keyCode, [ 38, 40, 37, 39, 16, 17, 18, 9, 8, 91, 93, 20, 46, 186, 190, 46, 78, 188, 44, 86 ])) { + c.update(); + } else { + c._updateFormGroupStatus(c.getValid(this.value) !== false); + } + if (c.options.inputSearch === true) { + c.filter(a(this).val().toLowerCase()); + } + }); + } + }, + _bindWindowEvents: function() { + var b = a(window.document); + var c = this; + var d = ".iconpicker.inst" + this._id; + a(window).on("resize.iconpicker" + d + " orientationchange.iconpicker" + d, function(a) { + if (c.popover.hasClass("in")) { + c.updatePlacement(); + } + }); + if (!c.isInline()) { + b.on("mouseup" + d, function(a) { + if (!c._isEventInsideIconpicker(a) && !c.isInline()) { + c.hide(); + } + }); + } + return false; + }, + _unbindElementEvents: function() { + this.popover.off(".iconpicker"); + this.element.off(".iconpicker"); + if (this.hasInput()) { + this.input.off(".iconpicker"); + } + if (this.hasComponent()) { + this.component.off(".iconpicker"); + } + if (this.hasContainer()) { + this.container.off(".iconpicker"); + } + }, + _unbindWindowEvents: function() { + a(window).off(".iconpicker.inst" + this._id); + a(window.document).off(".iconpicker.inst" + this._id); + }, + updatePlacement: function(b, c) { + b = b || this.options.placement; + this.options.placement = b; + c = c || this.options.collision; + c = c === true ? "flip" : c; + var d = { + at: "right bottom", + my: "right top", + of: this.hasInput() && !this.isInputGroup() ? this.input : this.container, + collision: c === true ? "flip" : c, + within: window + }; + this.popover.removeClass("inline topLeftCorner topLeft top topRight topRightCorner " + "rightTop right rightBottom bottomRight bottomRightCorner " + "bottom bottomLeft bottomLeftCorner leftBottom left leftTop"); + if (typeof b === "object") { + return this.popover.pos(a.extend({}, d, b)); + } + switch (b) { + case "inline": + { + d = false; + } + break; + + case "topLeftCorner": + { + d.my = "right bottom"; + d.at = "left top"; + } + break; + + case "topLeft": + { + d.my = "left bottom"; + d.at = "left top"; + } + break; + + case "top": + { + d.my = "center bottom"; + d.at = "center top"; + } + break; + + case "topRight": + { + d.my = "right bottom"; + d.at = "right top"; + } + break; + + case "topRightCorner": + { + d.my = "left bottom"; + d.at = "right top"; + } + break; + + case "rightTop": + { + d.my = "left bottom"; + d.at = "right center"; + } + break; + + case "right": + { + d.my = "left center"; + d.at = "right center"; + } + break; + + case "rightBottom": + { + d.my = "left top"; + d.at = "right center"; + } + break; + + case "bottomRightCorner": + { + d.my = "left top"; + d.at = "right bottom"; + } + break; + + case "bottomRight": + { + d.my = "right top"; + d.at = "right bottom"; + } + break; + + case "bottom": + { + d.my = "center top"; + d.at = "center bottom"; + } + break; + + case "bottomLeft": + { + d.my = "left top"; + d.at = "left bottom"; + } + break; + + case "bottomLeftCorner": + { + d.my = "right top"; + d.at = "left bottom"; + } + break; + + case "leftBottom": + { + d.my = "right top"; + d.at = "left center"; + } + break; + + case "left": + { + d.my = "right center"; + d.at = "left center"; + } + break; + + case "leftTop": + { + d.my = "right bottom"; + d.at = "left center"; + } + break; + + default: + { + return false; + } + break; + } + this.popover.css({ + display: this.options.placement === "inline" ? "" : "block" + }); + if (d !== false) { + this.popover.pos(d).css("maxWidth", a(window).width() - this.container.offset().left - 5); + } else { + this.popover.css({ + top: "auto", + right: "auto", + bottom: "auto", + left: "auto", + maxWidth: "none" + }); + } + this.popover.addClass(this.options.placement); + return true; + }, + _updateComponents: function() { + this.iconpicker.find(".iconpicker-item.iconpicker-selected").removeClass("iconpicker-selected " + this.options.selectedCustomClass); + if (this.iconpickerValue) { + this.iconpicker.find("." + this.options.fullClassFormatter(this.iconpickerValue).replace(/ /g, ".")).parent().addClass("iconpicker-selected " + this.options.selectedCustomClass); + } + if (this.hasComponent()) { + var a = this.component.find("i"); + if (a.length > 0) { + a.attr("class", this.options.fullClassFormatter(this.iconpickerValue)); + } else { + this.component.html(this.getHtml()); + } + } + }, + _updateFormGroupStatus: function(a) { + if (this.hasInput()) { + if (a !== false) { + this.input.parents(".form-group:first").removeClass("has-error"); + } else { + this.input.parents(".form-group:first").addClass("has-error"); + } + return true; + } + return false; + }, + getValid: function(c) { + if (!b.isString(c)) { + c = ""; + } + var d = c === ""; + c = a.trim(c); + if (b.inArray(c, this.options.icons) || d) { + return c; + } + return false; + }, + setValue: function(a) { + var b = this.getValid(a); + if (b !== false) { + this.iconpickerValue = b; + this._trigger("iconpickerSetValue", { + iconpickerValue: b + }); + return this.iconpickerValue; + } else { + this._trigger("iconpickerInvalid", { + iconpickerValue: a + }); + return false; + } + }, + getHtml: function() { + return ''; + }, + setSourceValue: function(a) { + a = this.setValue(a); + if (a !== false && a !== "") { + if (this.hasInput()) { + this.input.val(this.iconpickerValue); + } else { + this.element.data("iconpickerValue", this.iconpickerValue); + } + this._trigger("iconpickerSetSourceValue", { + iconpickerValue: a + }); + } + return a; + }, + getSourceValue: function(a) { + a = a || this.options.defaultValue; + var b = a; + if (this.hasInput()) { + b = this.input.val(); + } else { + b = this.element.data("iconpickerValue"); + } + if (b === undefined || b === "" || b === null || b === false) { + b = a; + } + return b; + }, + hasInput: function() { + return this.input !== false; + }, + isInputSearch: function() { + return this.hasInput() && this.options.inputSearch === true; + }, + isInputGroup: function() { + return this.container.is(".input-group"); + }, + isDropdownMenu: function() { + return this.container.is(".dropdown-menu"); + }, + hasSeparatedSearchInput: function() { + return this.options.templates.search !== false && !this.isInputSearch(); + }, + hasComponent: function() { + return this.component !== false; + }, + hasContainer: function() { + return this.container !== false; + }, + getAcceptButton: function() { + return this.popover.find(".iconpicker-btn-accept"); + }, + getCancelButton: function() { + return this.popover.find(".iconpicker-btn-cancel"); + }, + getSearchInput: function() { + return this.popover.find(".iconpicker-search"); + }, + filter: function(c) { + if (b.isEmpty(c)) { + this.iconpicker.find(".iconpicker-item").show(); + return a(false); + } else { + var d = []; + this.iconpicker.find(".iconpicker-item").each(function() { + var b = a(this); + var e = b.attr("title").toLowerCase(); + var f = false; + try { + f = new RegExp(c, "g"); + } catch (g) { + f = false; + } + if (f !== false && e.match(f)) { + d.push(b); + b.show(); + } else { + b.hide(); + } + }); + return d; + } + }, + show: function() { + if (this.popover.hasClass("in")) { + return false; + } + a.iconpicker.batch(a(".iconpicker-popover.in:not(.inline)").not(this.popover), "hide"); + this._trigger("iconpickerShow"); + this.updatePlacement(); + this.popover.addClass("in"); + setTimeout(a.proxy(function() { + this.popover.css("display", this.isInline() ? "" : "block"); + this._trigger("iconpickerShown"); + }, this), this.options.animation ? 300 : 1); + }, + hide: function() { + if (!this.popover.hasClass("in")) { + return false; + } + this._trigger("iconpickerHide"); + this.popover.removeClass("in"); + setTimeout(a.proxy(function() { + this.popover.css("display", "none"); + this.getSearchInput().val(""); + this.filter(""); + this._trigger("iconpickerHidden"); + }, this), this.options.animation ? 300 : 1); + }, + toggle: function() { + if (this.popover.is(":visible")) { + this.hide(); + } else { + this.show(true); + } + }, + update: function(a, b) { + a = a ? a : this.getSourceValue(this.iconpickerValue); + this._trigger("iconpickerUpdate"); + if (b === true) { + a = this.setValue(a); + } else { + a = this.setSourceValue(a); + this._updateFormGroupStatus(a !== false); + } + if (a !== false) { + this._updateComponents(); + } + this._trigger("iconpickerUpdated"); + return a; + }, + destroy: function() { + this._trigger("iconpickerDestroy"); + this.element.removeData("iconpicker").removeData("iconpickerValue").removeClass("iconpicker-element"); + this._unbindElementEvents(); + this._unbindWindowEvents(); + a(this.popover).remove(); + this._trigger("iconpickerDestroyed"); + }, + disable: function() { + if (this.hasInput()) { + this.input.prop("disabled", true); + return true; + } + return false; + }, + enable: function() { + if (this.hasInput()) { + this.input.prop("disabled", false); + return true; + } + return false; + }, + isDisabled: function() { + if (this.hasInput()) { + return this.input.prop("disabled") === true; + } + return false; + }, + isInline: function() { + return this.options.placement === "inline" || this.popover.hasClass("inline"); + } + }; + a.iconpicker = c; + a.fn.iconpicker = function(b) { + return this.each(function() { + var d = a(this); + if (!d.data("iconpicker")) { + d.data("iconpicker", new c(this, typeof b === "object" ? b : {})); + } + }); + }; + c.defaultOptions.icons = [ "fa-adjust", "fa-adn", "fa-align-center", "fa-align-justify", "fa-align-left", "fa-align-right", "fa-ambulance", "fa-anchor", "fa-android", "fa-angle-double-down", "fa-angle-double-left", "fa-angle-double-right", "fa-angle-double-up", "fa-angle-down", "fa-angle-left", "fa-angle-right", "fa-angle-up", "fa-apple", "fa-archive", "fa-arrow-circle-down", "fa-arrow-circle-left", "fa-arrow-circle-o-down", "fa-arrow-circle-o-left", "fa-arrow-circle-o-right", "fa-arrow-circle-o-up", "fa-arrow-circle-right", "fa-arrow-circle-up", "fa-arrow-down", "fa-arrow-left", "fa-arrow-right", "fa-arrow-up", "fa-arrows", "fa-arrows-alt", "fa-arrows-h", "fa-arrows-v", "fa-asterisk", "fa-automobile", "fa-backward", "fa-ban", "fa-bank", "fa-bar-chart-o", "fa-barcode", "fa-bars", "fa-beer", "fa-behance", "fa-behance-square", "fa-bell", "fa-bell-o", "fa-bitbucket", "fa-bitbucket-square", "fa-bitcoin", "fa-bold", "fa-bolt", "fa-bomb", "fa-book", "fa-bookmark", "fa-bookmark-o", "fa-briefcase", "fa-btc", "fa-bug", "fa-building", "fa-building-o", "fa-bullhorn", "fa-bullseye", "fa-cab", "fa-calendar", "fa-calendar-o", "fa-camera", "fa-camera-retro", "fa-car", "fa-caret-down", "fa-caret-left", "fa-caret-right", "fa-caret-square-o-down", "fa-caret-square-o-left", "fa-caret-square-o-right", "fa-caret-square-o-up", "fa-caret-up", "fa-certificate", "fa-chain", "fa-chain-broken", "fa-check", "fa-check-circle", "fa-check-circle-o", "fa-check-square", "fa-check-square-o", "fa-chevron-circle-down", "fa-chevron-circle-left", "fa-chevron-circle-right", "fa-chevron-circle-up", "fa-chevron-down", "fa-chevron-left", "fa-chevron-right", "fa-chevron-up", "fa-child", "fa-circle", "fa-circle-o", "fa-circle-o-notch", "fa-circle-thin", "fa-clipboard", "fa-clock-o", "fa-cloud", "fa-cloud-download", "fa-cloud-upload", "fa-cny", "fa-code", "fa-code-fork", "fa-codepen", "fa-coffee", "fa-cog", "fa-cogs", "fa-columns", "fa-comment", "fa-comment-o", "fa-comments", "fa-comments-o", "fa-compass", "fa-compress", "fa-copy", "fa-credit-card", "fa-crop", "fa-crosshairs", "fa-css3", "fa-cube", "fa-cubes", "fa-cut", "fa-cutlery", "fa-dashboard", "fa-database", "fa-dedent", "fa-delicious", "fa-desktop", "fa-deviantart", "fa-digg", "fa-dollar", "fa-dot-circle-o", "fa-download", "fa-dribbble", "fa-dropbox", "fa-drupal", "fa-edit", "fa-eject", "fa-ellipsis-h", "fa-ellipsis-v", "fa-empire", "fa-envelope", "fa-envelope-o", "fa-envelope-square", "fa-eraser", "fa-eur", "fa-euro", "fa-exchange", "fa-exclamation", "fa-exclamation-circle", "fa-exclamation-triangle", "fa-expand", "fa-external-link", "fa-external-link-square", "fa-eye", "fa-eye-slash", "fa-facebook", "fa-facebook-square", "fa-fast-backward", "fa-fast-forward", "fa-fax", "fa-female", "fa-fighter-jet", "fa-file", "fa-file-archive-o", "fa-file-audio-o", "fa-file-code-o", "fa-file-excel-o", "fa-file-image-o", "fa-file-movie-o", "fa-file-o", "fa-file-pdf-o", "fa-file-photo-o", "fa-file-picture-o", "fa-file-powerpoint-o", "fa-file-sound-o", "fa-file-text", "fa-file-text-o", "fa-file-video-o", "fa-file-word-o", "fa-file-zip-o", "fa-files-o", "fa-film", "fa-filter", "fa-fire", "fa-fire-extinguisher", "fa-flag", "fa-flag-checkered", "fa-flag-o", "fa-flash", "fa-flask", "fa-flickr", "fa-floppy-o", "fa-folder", "fa-folder-o", "fa-folder-open", "fa-folder-open-o", "fa-font", "fa-forward", "fa-foursquare", "fa-frown-o", "fa-gamepad", "fa-gavel", "fa-gbp", "fa-ge", "fa-gear", "fa-gears", "fa-gift", "fa-git", "fa-git-square", "fa-github", "fa-github-alt", "fa-github-square", "fa-gittip", "fa-glass", "fa-globe", "fa-google", "fa-google-plus", "fa-google-plus-square", "fa-graduation-cap", "fa-group", "fa-h-square", "fa-hacker-news", "fa-hand-o-down", "fa-hand-o-left", "fa-hand-o-right", "fa-hand-o-up", "fa-hdd-o", "fa-header", "fa-headphones", "fa-heart", "fa-heart-o", "fa-history", "fa-home", "fa-hospital-o", "fa-html5", "fa-image", "fa-inbox", "fa-indent", "fa-info", "fa-info-circle", "fa-inr", "fa-instagram", "fa-institution", "fa-italic", "fa-joomla", "fa-jpy", "fa-jsfiddle", "fa-key", "fa-keyboard-o", "fa-krw", "fa-language", "fa-laptop", "fa-leaf", "fa-legal", "fa-lemon-o", "fa-level-down", "fa-level-up", "fa-life-bouy", "fa-life-ring", "fa-life-saver", "fa-lightbulb-o", "fa-link", "fa-linkedin", "fa-linkedin-square", "fa-linux", "fa-list", "fa-list-alt", "fa-list-ol", "fa-list-ul", "fa-location-arrow", "fa-lock", "fa-long-arrow-down", "fa-long-arrow-left", "fa-long-arrow-right", "fa-long-arrow-up", "fa-magic", "fa-magnet", "fa-mail-forward", "fa-mail-reply", "fa-mail-reply-all", "fa-male", "fa-map-marker", "fa-maxcdn", "fa-medkit", "fa-meh-o", "fa-microphone", "fa-microphone-slash", "fa-minus", "fa-minus-circle", "fa-minus-square", "fa-minus-square-o", "fa-mobile", "fa-mobile-phone", "fa-money", "fa-moon-o", "fa-mortar-board", "fa-music", "fa-navicon", "fa-openid", "fa-outdent", "fa-pagelines", "fa-paper-plane", "fa-paper-plane-o", "fa-paperclip", "fa-paragraph", "fa-paste", "fa-pause", "fa-paw", "fa-pencil", "fa-pencil-square", "fa-pencil-square-o", "fa-phone", "fa-phone-square", "fa-photo", "fa-picture-o", "fa-pied-piper", "fa-pied-piper-alt", "fa-pied-piper-square", "fa-pinterest", "fa-pinterest-square", "fa-plane", "fa-play", "fa-play-circle", "fa-play-circle-o", "fa-plus", "fa-plus-circle", "fa-plus-square", "fa-plus-square-o", "fa-power-off", "fa-print", "fa-puzzle-piece", "fa-qq", "fa-qrcode", "fa-question", "fa-question-circle", "fa-quote-left", "fa-quote-right", "fa-ra", "fa-random", "fa-rebel", "fa-recycle", "fa-reddit", "fa-reddit-square", "fa-refresh", "fa-renren", "fa-reorder", "fa-repeat", "fa-reply", "fa-reply-all", "fa-retweet", "fa-rmb", "fa-road", "fa-rocket", "fa-rotate-left", "fa-rotate-right", "fa-rouble", "fa-rss", "fa-rss-square", "fa-rub", "fa-ruble", "fa-rupee", "fa-save", "fa-scissors", "fa-search", "fa-search-minus", "fa-search-plus", "fa-send", "fa-send-o", "fa-share", "fa-share-alt", "fa-share-alt-square", "fa-share-square", "fa-share-square-o", "fa-shield", "fa-shopping-cart", "fa-sign-in", "fa-sign-out", "fa-signal", "fa-sitemap", "fa-skype", "fa-slack", "fa-sliders", "fa-smile-o", "fa-sort", "fa-sort-alpha-asc", "fa-sort-alpha-desc", "fa-sort-amount-asc", "fa-sort-amount-desc", "fa-sort-asc", "fa-sort-desc", "fa-sort-down", "fa-sort-numeric-asc", "fa-sort-numeric-desc", "fa-sort-up", "fa-soundcloud", "fa-space-shuttle", "fa-spinner", "fa-spoon", "fa-spotify", "fa-square", "fa-square-o", "fa-stack-exchange", "fa-stack-overflow", "fa-star", "fa-star-half", "fa-star-half-empty", "fa-star-half-full", "fa-star-half-o", "fa-star-o", "fa-steam", "fa-steam-square", "fa-step-backward", "fa-step-forward", "fa-stethoscope", "fa-stop", "fa-strikethrough", "fa-stumbleupon", "fa-stumbleupon-circle", "fa-subscript", "fa-suitcase", "fa-sun-o", "fa-superscript", "fa-support", "fa-table", "fa-tablet", "fa-tachometer", "fa-tag", "fa-tags", "fa-tasks", "fa-taxi", "fa-tencent-weibo", "fa-terminal", "fa-text-height", "fa-text-width", "fa-th", "fa-th-large", "fa-th-list", "fa-thumb-tack", "fa-thumbs-down", "fa-thumbs-o-down", "fa-thumbs-o-up", "fa-thumbs-up", "fa-ticket", "fa-times", "fa-times-circle", "fa-times-circle-o", "fa-tint", "fa-toggle-down", "fa-toggle-left", "fa-toggle-right", "fa-toggle-up", "fa-trash-o", "fa-tree", "fa-trello", "fa-trophy", "fa-truck", "fa-try", "fa-tumblr", "fa-tumblr-square", "fa-turkish-lira", "fa-twitter", "fa-twitter-square", "fa-umbrella", "fa-underline", "fa-undo", "fa-university", "fa-unlink", "fa-unlock", "fa-unlock-alt", "fa-unsorted", "fa-upload", "fa-usd", "fa-user", "fa-user-md", "fa-users", "fa-video-camera", "fa-vimeo-square", "fa-vine", "fa-vk", "fa-volume-down", "fa-volume-off", "fa-volume-up", "fa-warning", "fa-wechat", "fa-weibo", "fa-weixin", "fa-wheelchair", "fa-windows", "fa-won", "fa-wordpress", "fa-wrench", "fa-xing", "fa-xing-square", "fa-yahoo", "fa-yen", "fa-youtube", "fa-youtube-play", "fa-youtube-square" ]; +}); \ No newline at end of file diff --git a/lib/better-font-awesome-library/lib/fontawesome-iconpicker/js/fontawesome-iconpicker.min.js b/lib/better-font-awesome-library/lib/fontawesome-iconpicker/js/fontawesome-iconpicker.min.js new file mode 100644 index 0000000..e9654ab --- /dev/null +++ b/lib/better-font-awesome-library/lib/fontawesome-iconpicker/js/fontawesome-iconpicker.min.js @@ -0,0 +1 @@ +!function(a,b){function c(a,b,c){return[parseFloat(a[0])*(n.test(a[0])?b/100:1),parseFloat(a[1])*(n.test(a[1])?c/100:1)]}function d(b,c){return parseInt(a.css(b,c),10)||0}function e(b){var c=b[0];return 9===c.nodeType?{width:b.width(),height:b.height(),offset:{top:0,left:0}}:a.isWindow(c)?{width:b.width(),height:b.height(),offset:{top:b.scrollTop(),left:b.scrollLeft()}}:c.preventDefault?{width:0,height:0,offset:{top:c.pageY,left:c.pageX}}:{width:b.outerWidth(),height:b.outerHeight(),offset:b.offset()}}a.ui=a.ui||{};var f,g=Math.max,h=Math.abs,i=Math.round,j=/left|center|right/,k=/top|center|bottom/,l=/[\+\-]\d+(\.[\d]+)?%?/,m=/^\w+/,n=/%$/,o=a.fn.pos;a.pos={scrollbarWidth:function(){if(f!==b)return f;var c,d,e=a("
"),g=e.children()[0];return a("body").append(e),c=g.offsetWidth,e.css("overflow","scroll"),d=g.offsetWidth,c===d&&(d=e[0].clientWidth),e.remove(),f=c-d},getScrollInfo:function(b){var c=b.isWindow||b.isDocument?"":b.element.css("overflow-x"),d=b.isWindow||b.isDocument?"":b.element.css("overflow-y"),e="scroll"===c||"auto"===c&&b.widthd?"left":c>0?"right":"center",vertical:0>f?"top":e>0?"bottom":"middle"};l>n&&h(c+d)p&&h(e+f)g(h(e),h(f))?i.important="horizontal":i.important="vertical",b.using.call(this,a,i)}),k.offset(a.extend(A,{using:j}))})},a.ui.pos={_trigger:function(a,b,c,d){b.elem&&b.elem.trigger({type:c,position:a,positionData:b,triggered:d})},fit:{left:function(b,c){a.ui.pos._trigger(b,c,"posCollide","fitLeft");var d,e=c.within,f=e.isWindow?e.scrollLeft:e.offset.left,h=e.width,i=b.left-c.collisionPosition.marginLeft,j=f-i,k=i+c.collisionWidth-h-f;c.collisionWidth>h?j>0&&0>=k?(d=b.left+j+c.collisionWidth-h-f,b.left+=j-d):k>0&&0>=j?b.left=f:j>k?b.left=f+h-c.collisionWidth:b.left=f:j>0?b.left+=j:k>0?b.left-=k:b.left=g(b.left-i,b.left),a.ui.pos._trigger(b,c,"posCollided","fitLeft")},top:function(b,c){a.ui.pos._trigger(b,c,"posCollide","fitTop");var d,e=c.within,f=e.isWindow?e.scrollTop:e.offset.top,h=c.within.height,i=b.top-c.collisionPosition.marginTop,j=f-i,k=i+c.collisionHeight-h-f;c.collisionHeight>h?j>0&&0>=k?(d=b.top+j+c.collisionHeight-h-f,b.top+=j-d):k>0&&0>=j?b.top=f:j>k?b.top=f+h-c.collisionHeight:b.top=f:j>0?b.top+=j:k>0?b.top-=k:b.top=g(b.top-i,b.top),a.ui.pos._trigger(b,c,"posCollided","fitTop")}},flip:{left:function(b,c){a.ui.pos._trigger(b,c,"posCollide","flipLeft");var d,e,f=c.within,g=f.offset.left+f.scrollLeft,i=f.width,j=f.isWindow?f.scrollLeft:f.offset.left,k=b.left-c.collisionPosition.marginLeft,l=k-j,m=k+c.collisionWidth-i-j,n="left"===c.my[0]?-c.elemWidth:"right"===c.my[0]?c.elemWidth:0,o="left"===c.at[0]?c.targetWidth:"right"===c.at[0]?-c.targetWidth:0,p=-2*c.offset[0];0>l?(d=b.left+n+o+p+c.collisionWidth-i-g,(0>d||d0&&(e=b.left-c.collisionPosition.marginLeft+n+o+p-j,(e>0||h(e)l?(e=b.top+o+p+q+c.collisionHeight-i-g,b.top+o+p+q>l&&(0>e||e0&&(d=b.top-c.collisionPosition.marginTop+o+p+q-j,b.top+o+p+q>m&&(d>0||h(d)10&&11>e,b.innerHTML="",c.removeChild(b)}()}(jQuery),function(a){"use strict";"function"==typeof define&&define.amd?define(["jquery"],a):window.jQuery&&!window.jQuery.fn.iconpicker&&a(window.jQuery)}(function(a){"use strict";var b={isEmpty:function(a){return a===!1||""===a||null===a||void 0===a},isEmptyObject:function(a){return this.isEmpty(a)===!0||0===a.length},isElement:function(b){return a(b).length>0},isString:function(a){return"string"==typeof a||a instanceof String},isArray:function(b){return a.isArray(b)},inArray:function(b,c){return-1!==a.inArray(b,c)},throwError:function(a){throw"Font Awesome Icon Picker Exception: "+a}},c=function(d,e){this._id=c._idCounter++,this.element=a(d).addClass("iconpicker-element"),this._trigger("iconpickerCreate"),this.options=a.extend({},c.defaultOptions,this.element.data(),e),this.options.templates=a.extend({},c.defaultOptions.templates,this.options.templates),this.options.originalPlacement=this.options.placement,this.container=b.isElement(this.options.container)?a(this.options.container):!1,this.container===!1&&(this.element.is(".dropdown-toggle")?this.container=a("~ .dropdown-menu:first",this.element):this.container=this.element.is("input,textarea,button,.btn")?this.element.parent():this.element),this.container.addClass("iconpicker-container"),this.isDropdownMenu()&&(this.options.templates.search=!1,this.options.templates.buttons=!1,this.options.placement="inline"),this.input=this.element.is("input,textarea")?this.element.addClass("iconpicker-input"):!1,this.input===!1&&(this.input=this.container.find(this.options.input),this.input.is("input,textarea")||(this.input=!1)),this.component=this.isDropdownMenu()?this.container.parent().find(this.options.component):this.container.find(this.options.component),0===this.component.length?this.component=!1:this.component.find("i").addClass("iconpicker-component"),this._createPopover(),this._createIconpicker(),0===this.getAcceptButton().length&&(this.options.mustAccept=!1),this.isInputGroup()?this.container.parent().append(this.popover):this.container.append(this.popover),this._bindElementEvents(),this._bindWindowEvents(),this.update(this.options.selected),this.isInline()&&this.show(),this._trigger("iconpickerCreated")};c._idCounter=0,c.defaultOptions={title:!1,selected:!1,defaultValue:!1,placement:"bottom",collision:"none",animation:!0,hideOnSelect:!1,showFooter:!1,searchInFooter:!1,mustAccept:!1,selectedCustomClass:"bg-primary",icons:[],fullClassFormatter:function(a){return"fa "+a},input:"input,.iconpicker-input",inputSearch:!1,container:!1,component:".input-group-addon,.iconpicker-component",templates:{popover:'
',footer:'',buttons:' ',search:'',iconpicker:'
',iconpickerItem:''}},c.batch=function(b,c){var d=Array.prototype.slice.call(arguments,2);return a(b).each(function(){var b=a(this).data("iconpicker");b&&b[c].apply(b,d)})},c.prototype={constructor:c,options:{},_id:0,_trigger:function(b,c){c=c||{},this.element.trigger(a.extend({type:b,iconpickerInstance:this},c))},_createPopover:function(){this.popover=a(this.options.templates.popover);var c=this.popover.find(".popover-title");if(this.options.title&&c.append(a('
'+this.options.title+"
")),this.hasSeparatedSearchInput()&&!this.options.searchInFooter?c.append(this.options.templates.search):this.options.title||c.remove(),this.options.showFooter&&!b.isEmpty(this.options.templates.footer)){var d=a(this.options.templates.footer);this.hasSeparatedSearchInput()&&this.options.searchInFooter&&d.append(a(this.options.templates.search)),b.isEmpty(this.options.templates.buttons)||d.append(a(this.options.templates.buttons)),this.popover.append(d)}return this.options.animation===!0&&this.popover.addClass("fade"),this.popover},_createIconpicker:function(){var b=this;this.iconpicker=a(this.options.templates.iconpicker);var c=function(c){var d=a(this);return d.is("i")&&(d=d.parent()),b._trigger("iconpickerSelect",{iconpickerItem:d,iconpickerValue:b.iconpickerValue}),b.options.mustAccept===!1?(b.update(d.data("iconpickerValue")),b._trigger("iconpickerSelected",{iconpickerItem:this,iconpickerValue:b.iconpickerValue})):b.update(d.data("iconpickerValue"),!0),b.options.hideOnSelect&&b.options.mustAccept===!1&&b.hide(),c.preventDefault(),!1};for(var d in this.options.icons){var e=a(this.options.templates.iconpickerItem);e.find("i").addClass(this.options.fullClassFormatter(this.options.icons[d])),e.data("iconpickerValue",this.options.icons[d]).on("click.iconpicker",c),this.iconpicker.find(".iconpicker-items").append(e.attr("title","."+this.options.icons[d]))}return this.popover.find(".popover-content").append(this.iconpicker),this.iconpicker},_isEventInsideIconpicker:function(b){var c=a(b.target);return c.hasClass("iconpicker-element")&&(!c.hasClass("iconpicker-element")||c.is(this.element))||0!==c.parents(".iconpicker-popover").length?!0:!1},_bindElementEvents:function(){var c=this;this.getSearchInput().on("keyup.iconpicker",function(){c.filter(a(this).val().toLowerCase())}),this.getAcceptButton().on("click.iconpicker",function(){var a=c.iconpicker.find(".iconpicker-selected").get(0);c.update(c.iconpickerValue),c._trigger("iconpickerSelected",{iconpickerItem:a,iconpickerValue:c.iconpickerValue}),c.isInline()||c.hide()}),this.getCancelButton().on("click.iconpicker",function(){c.isInline()||c.hide()}),this.element.on("focus.iconpicker",function(a){c.show(),a.stopPropagation()}),this.hasComponent()&&this.component.on("click.iconpicker",function(){c.toggle()}),this.hasInput()&&this.input.on("keyup.iconpicker",function(d){b.inArray(d.keyCode,[38,40,37,39,16,17,18,9,8,91,93,20,46,186,190,46,78,188,44,86])?c._updateFormGroupStatus(c.getValid(this.value)!==!1):c.update(),c.options.inputSearch===!0&&c.filter(a(this).val().toLowerCase())})},_bindWindowEvents:function(){var b=a(window.document),c=this,d=".iconpicker.inst"+this._id;return a(window).on("resize.iconpicker"+d+" orientationchange.iconpicker"+d,function(a){c.popover.hasClass("in")&&c.updatePlacement()}),c.isInline()||b.on("mouseup"+d,function(a){c._isEventInsideIconpicker(a)||c.isInline()||c.hide()}),!1},_unbindElementEvents:function(){this.popover.off(".iconpicker"),this.element.off(".iconpicker"),this.hasInput()&&this.input.off(".iconpicker"),this.hasComponent()&&this.component.off(".iconpicker"),this.hasContainer()&&this.container.off(".iconpicker")},_unbindWindowEvents:function(){a(window).off(".iconpicker.inst"+this._id),a(window.document).off(".iconpicker.inst"+this._id)},updatePlacement:function(b,c){b=b||this.options.placement,this.options.placement=b,c=c||this.options.collision,c=c===!0?"flip":c;var d={at:"right bottom",my:"right top",of:this.hasInput()&&!this.isInputGroup()?this.input:this.container,collision:c===!0?"flip":c,within:window};if(this.popover.removeClass("inline topLeftCorner topLeft top topRight topRightCorner rightTop right rightBottom bottomRight bottomRightCorner bottom bottomLeft bottomLeftCorner leftBottom left leftTop"),"object"==typeof b)return this.popover.pos(a.extend({},d,b));switch(b){case"inline":d=!1;break;case"topLeftCorner":d.my="right bottom",d.at="left top";break;case"topLeft":d.my="left bottom",d.at="left top";break;case"top":d.my="center bottom",d.at="center top";break;case"topRight":d.my="right bottom",d.at="right top";break;case"topRightCorner":d.my="left bottom",d.at="right top";break;case"rightTop":d.my="left bottom",d.at="right center";break;case"right":d.my="left center",d.at="right center";break;case"rightBottom":d.my="left top",d.at="right center";break;case"bottomRightCorner":d.my="left top",d.at="right bottom";break;case"bottomRight":d.my="right top",d.at="right bottom";break;case"bottom":d.my="center top",d.at="center bottom";break;case"bottomLeft":d.my="left top",d.at="left bottom";break;case"bottomLeftCorner":d.my="right top",d.at="left bottom";break;case"leftBottom":d.my="right top",d.at="left center";break;case"left":d.my="right center",d.at="left center";break;case"leftTop":d.my="right bottom",d.at="left center";break;default:return!1}return this.popover.css({display:"inline"===this.options.placement?"":"block"}),d!==!1?this.popover.pos(d).css("maxWidth",a(window).width()-this.container.offset().left-5):this.popover.css({top:"auto",right:"auto",bottom:"auto",left:"auto",maxWidth:"none"}),this.popover.addClass(this.options.placement),!0},_updateComponents:function(){if(this.iconpicker.find(".iconpicker-item.iconpicker-selected").removeClass("iconpicker-selected "+this.options.selectedCustomClass),this.iconpickerValue&&this.iconpicker.find("."+this.options.fullClassFormatter(this.iconpickerValue).replace(/ /g,".")).parent().addClass("iconpicker-selected "+this.options.selectedCustomClass),this.hasComponent()){var a=this.component.find("i");a.length>0?a.attr("class",this.options.fullClassFormatter(this.iconpickerValue)):this.component.html(this.getHtml())}},_updateFormGroupStatus:function(a){return this.hasInput()?(a!==!1?this.input.parents(".form-group:first").removeClass("has-error"):this.input.parents(".form-group:first").addClass("has-error"),!0):!1},getValid:function(c){b.isString(c)||(c="");var d=""===c;return c=a.trim(c),b.inArray(c,this.options.icons)||d?c:!1},setValue:function(a){var b=this.getValid(a);return b!==!1?(this.iconpickerValue=b,this._trigger("iconpickerSetValue",{iconpickerValue:b}),this.iconpickerValue):(this._trigger("iconpickerInvalid",{iconpickerValue:a}),!1)},getHtml:function(){return''},setSourceValue:function(a){return a=this.setValue(a),a!==!1&&""!==a&&(this.hasInput()?this.input.val(this.iconpickerValue):this.element.data("iconpickerValue",this.iconpickerValue),this._trigger("iconpickerSetSourceValue",{iconpickerValue:a})),a},getSourceValue:function(a){a=a||this.options.defaultValue;var b=a;return b=this.hasInput()?this.input.val():this.element.data("iconpickerValue"),(void 0===b||""===b||null===b||b===!1)&&(b=a),b},hasInput:function(){return this.input!==!1},isInputSearch:function(){return this.hasInput()&&this.options.inputSearch===!0},isInputGroup:function(){return this.container.is(".input-group")},isDropdownMenu:function(){return this.container.is(".dropdown-menu")},hasSeparatedSearchInput:function(){return this.options.templates.search!==!1&&!this.isInputSearch()},hasComponent:function(){return this.component!==!1},hasContainer:function(){return this.container!==!1},getAcceptButton:function(){return this.popover.find(".iconpicker-btn-accept")},getCancelButton:function(){return this.popover.find(".iconpicker-btn-cancel")},getSearchInput:function(){return this.popover.find(".iconpicker-search")},filter:function(c){if(b.isEmpty(c))return this.iconpicker.find(".iconpicker-item").show(),a(!1);var d=[];return this.iconpicker.find(".iconpicker-item").each(function(){var b=a(this),e=b.attr("title").toLowerCase(),f=!1;try{f=new RegExp(c,"g")}catch(g){f=!1}f!==!1&&e.match(f)?(d.push(b),b.show()):b.hide()}),d},show:function(){return this.popover.hasClass("in")?!1:(a.iconpicker.batch(a(".iconpicker-popover.in:not(.inline)").not(this.popover),"hide"),this._trigger("iconpickerShow"),this.updatePlacement(),this.popover.addClass("in"),void setTimeout(a.proxy(function(){this.popover.css("display",this.isInline()?"":"block"),this._trigger("iconpickerShown")},this),this.options.animation?300:1))},hide:function(){return this.popover.hasClass("in")?(this._trigger("iconpickerHide"),this.popover.removeClass("in"),void setTimeout(a.proxy(function(){this.popover.css("display","none"),this.getSearchInput().val(""),this.filter(""),this._trigger("iconpickerHidden")},this),this.options.animation?300:1)):!1},toggle:function(){this.popover.is(":visible")?this.hide():this.show(!0)},update:function(a,b){return a=a?a:this.getSourceValue(this.iconpickerValue),this._trigger("iconpickerUpdate"),b===!0?a=this.setValue(a):(a=this.setSourceValue(a),this._updateFormGroupStatus(a!==!1)),a!==!1&&this._updateComponents(),this._trigger("iconpickerUpdated"),a},destroy:function(){this._trigger("iconpickerDestroy"),this.element.removeData("iconpicker").removeData("iconpickerValue").removeClass("iconpicker-element"),this._unbindElementEvents(),this._unbindWindowEvents(),a(this.popover).remove(),this._trigger("iconpickerDestroyed")},disable:function(){return this.hasInput()?(this.input.prop("disabled",!0),!0):!1},enable:function(){return this.hasInput()?(this.input.prop("disabled",!1),!0):!1},isDisabled:function(){return this.hasInput()?this.input.prop("disabled")===!0:!1},isInline:function(){return"inline"===this.options.placement||this.popover.hasClass("inline")}},a.iconpicker=c,a.fn.iconpicker=function(b){return this.each(function(){var d=a(this);d.data("iconpicker")||d.data("iconpicker",new c(this,"object"==typeof b?b:{}))})},c.defaultOptions.icons=["fa-adjust","fa-adn","fa-align-center","fa-align-justify","fa-align-left","fa-align-right","fa-ambulance","fa-anchor","fa-android","fa-angle-double-down","fa-angle-double-left","fa-angle-double-right","fa-angle-double-up","fa-angle-down","fa-angle-left","fa-angle-right","fa-angle-up","fa-apple","fa-archive","fa-arrow-circle-down","fa-arrow-circle-left","fa-arrow-circle-o-down","fa-arrow-circle-o-left","fa-arrow-circle-o-right","fa-arrow-circle-o-up","fa-arrow-circle-right","fa-arrow-circle-up","fa-arrow-down","fa-arrow-left","fa-arrow-right","fa-arrow-up","fa-arrows","fa-arrows-alt","fa-arrows-h","fa-arrows-v","fa-asterisk","fa-automobile","fa-backward","fa-ban","fa-bank","fa-bar-chart-o","fa-barcode","fa-bars","fa-beer","fa-behance","fa-behance-square","fa-bell","fa-bell-o","fa-bitbucket","fa-bitbucket-square","fa-bitcoin","fa-bold","fa-bolt","fa-bomb","fa-book","fa-bookmark","fa-bookmark-o","fa-briefcase","fa-btc","fa-bug","fa-building","fa-building-o","fa-bullhorn","fa-bullseye","fa-cab","fa-calendar","fa-calendar-o","fa-camera","fa-camera-retro","fa-car","fa-caret-down","fa-caret-left","fa-caret-right","fa-caret-square-o-down","fa-caret-square-o-left","fa-caret-square-o-right","fa-caret-square-o-up","fa-caret-up","fa-certificate","fa-chain","fa-chain-broken","fa-check","fa-check-circle","fa-check-circle-o","fa-check-square","fa-check-square-o","fa-chevron-circle-down","fa-chevron-circle-left","fa-chevron-circle-right","fa-chevron-circle-up","fa-chevron-down","fa-chevron-left","fa-chevron-right","fa-chevron-up","fa-child","fa-circle","fa-circle-o","fa-circle-o-notch","fa-circle-thin","fa-clipboard","fa-clock-o","fa-cloud","fa-cloud-download","fa-cloud-upload","fa-cny","fa-code","fa-code-fork","fa-codepen","fa-coffee","fa-cog","fa-cogs","fa-columns","fa-comment","fa-comment-o","fa-comments","fa-comments-o","fa-compass","fa-compress","fa-copy","fa-credit-card","fa-crop","fa-crosshairs","fa-css3","fa-cube","fa-cubes","fa-cut","fa-cutlery","fa-dashboard","fa-database","fa-dedent","fa-delicious","fa-desktop","fa-deviantart","fa-digg","fa-dollar","fa-dot-circle-o","fa-download","fa-dribbble","fa-dropbox","fa-drupal","fa-edit","fa-eject","fa-ellipsis-h","fa-ellipsis-v","fa-empire","fa-envelope","fa-envelope-o","fa-envelope-square","fa-eraser","fa-eur","fa-euro","fa-exchange","fa-exclamation","fa-exclamation-circle","fa-exclamation-triangle","fa-expand","fa-external-link","fa-external-link-square","fa-eye","fa-eye-slash","fa-facebook","fa-facebook-square","fa-fast-backward","fa-fast-forward","fa-fax","fa-female","fa-fighter-jet","fa-file","fa-file-archive-o","fa-file-audio-o","fa-file-code-o","fa-file-excel-o","fa-file-image-o","fa-file-movie-o","fa-file-o","fa-file-pdf-o","fa-file-photo-o","fa-file-picture-o","fa-file-powerpoint-o","fa-file-sound-o","fa-file-text","fa-file-text-o","fa-file-video-o","fa-file-word-o","fa-file-zip-o","fa-files-o","fa-film","fa-filter","fa-fire","fa-fire-extinguisher","fa-flag","fa-flag-checkered","fa-flag-o","fa-flash","fa-flask","fa-flickr","fa-floppy-o","fa-folder","fa-folder-o","fa-folder-open","fa-folder-open-o","fa-font","fa-forward","fa-foursquare","fa-frown-o","fa-gamepad","fa-gavel","fa-gbp","fa-ge","fa-gear","fa-gears","fa-gift","fa-git","fa-git-square","fa-github","fa-github-alt","fa-github-square","fa-gittip","fa-glass","fa-globe","fa-google","fa-google-plus","fa-google-plus-square","fa-graduation-cap","fa-group","fa-h-square","fa-hacker-news","fa-hand-o-down","fa-hand-o-left","fa-hand-o-right","fa-hand-o-up","fa-hdd-o","fa-header","fa-headphones","fa-heart","fa-heart-o","fa-history","fa-home","fa-hospital-o","fa-html5","fa-image","fa-inbox","fa-indent","fa-info","fa-info-circle","fa-inr","fa-instagram","fa-institution","fa-italic","fa-joomla","fa-jpy","fa-jsfiddle","fa-key","fa-keyboard-o","fa-krw","fa-language","fa-laptop","fa-leaf","fa-legal","fa-lemon-o","fa-level-down","fa-level-up","fa-life-bouy","fa-life-ring","fa-life-saver","fa-lightbulb-o","fa-link","fa-linkedin","fa-linkedin-square","fa-linux","fa-list","fa-list-alt","fa-list-ol","fa-list-ul","fa-location-arrow","fa-lock","fa-long-arrow-down","fa-long-arrow-left","fa-long-arrow-right","fa-long-arrow-up","fa-magic","fa-magnet","fa-mail-forward","fa-mail-reply","fa-mail-reply-all","fa-male","fa-map-marker","fa-maxcdn","fa-medkit","fa-meh-o","fa-microphone","fa-microphone-slash","fa-minus","fa-minus-circle","fa-minus-square","fa-minus-square-o","fa-mobile","fa-mobile-phone","fa-money","fa-moon-o","fa-mortar-board","fa-music","fa-navicon","fa-openid","fa-outdent","fa-pagelines","fa-paper-plane","fa-paper-plane-o","fa-paperclip","fa-paragraph","fa-paste","fa-pause","fa-paw","fa-pencil","fa-pencil-square","fa-pencil-square-o","fa-phone","fa-phone-square","fa-photo","fa-picture-o","fa-pied-piper","fa-pied-piper-alt","fa-pied-piper-square","fa-pinterest","fa-pinterest-square","fa-plane","fa-play","fa-play-circle","fa-play-circle-o","fa-plus","fa-plus-circle","fa-plus-square","fa-plus-square-o","fa-power-off","fa-print","fa-puzzle-piece","fa-qq","fa-qrcode","fa-question","fa-question-circle","fa-quote-left","fa-quote-right","fa-ra","fa-random","fa-rebel","fa-recycle","fa-reddit","fa-reddit-square","fa-refresh","fa-renren","fa-reorder","fa-repeat","fa-reply","fa-reply-all","fa-retweet","fa-rmb","fa-road","fa-rocket","fa-rotate-left","fa-rotate-right","fa-rouble","fa-rss","fa-rss-square","fa-rub","fa-ruble","fa-rupee","fa-save","fa-scissors","fa-search","fa-search-minus","fa-search-plus","fa-send","fa-send-o","fa-share","fa-share-alt","fa-share-alt-square","fa-share-square","fa-share-square-o","fa-shield","fa-shopping-cart","fa-sign-in","fa-sign-out","fa-signal","fa-sitemap","fa-skype","fa-slack","fa-sliders","fa-smile-o","fa-sort","fa-sort-alpha-asc","fa-sort-alpha-desc","fa-sort-amount-asc","fa-sort-amount-desc","fa-sort-asc","fa-sort-desc","fa-sort-down","fa-sort-numeric-asc","fa-sort-numeric-desc","fa-sort-up","fa-soundcloud","fa-space-shuttle","fa-spinner","fa-spoon","fa-spotify","fa-square","fa-square-o","fa-stack-exchange","fa-stack-overflow","fa-star","fa-star-half","fa-star-half-empty","fa-star-half-full","fa-star-half-o","fa-star-o","fa-steam","fa-steam-square","fa-step-backward","fa-step-forward","fa-stethoscope","fa-stop","fa-strikethrough","fa-stumbleupon","fa-stumbleupon-circle","fa-subscript","fa-suitcase","fa-sun-o","fa-superscript","fa-support","fa-table","fa-tablet","fa-tachometer","fa-tag","fa-tags","fa-tasks","fa-taxi","fa-tencent-weibo","fa-terminal","fa-text-height","fa-text-width","fa-th","fa-th-large","fa-th-list","fa-thumb-tack","fa-thumbs-down","fa-thumbs-o-down","fa-thumbs-o-up","fa-thumbs-up","fa-ticket","fa-times","fa-times-circle","fa-times-circle-o","fa-tint","fa-toggle-down","fa-toggle-left","fa-toggle-right","fa-toggle-up","fa-trash-o","fa-tree","fa-trello","fa-trophy","fa-truck","fa-try","fa-tumblr","fa-tumblr-square","fa-turkish-lira","fa-twitter","fa-twitter-square","fa-umbrella","fa-underline","fa-undo","fa-university","fa-unlink","fa-unlock","fa-unlock-alt","fa-unsorted","fa-upload","fa-usd","fa-user","fa-user-md","fa-users","fa-video-camera","fa-vimeo-square","fa-vine","fa-vk","fa-volume-down","fa-volume-off","fa-volume-up","fa-warning","fa-wechat","fa-weibo","fa-weixin","fa-wheelchair","fa-windows","fa-won","fa-wordpress","fa-wrench","fa-xing","fa-xing-square","fa-yahoo","fa-yen","fa-youtube","fa-youtube-play","fa-youtube-square"]}); \ No newline at end of file diff --git a/style.css b/style.css index b48f5a7..fec22e3 100755 --- a/style.css +++ b/style.css @@ -5,7 +5,7 @@ Description: Trestle is a Genesis child theme for developers based on the default Genesis 2.0 Sample Theme. It features mobile first CSS, helpful theme options, and lots more tools to support your development process. Author: MIGHTYminnow Author URI: http://www.mightyminnow.com/ - Version: 2.1.0 + Version: 2.2.1 Tags: black, gray, red, white, light, one-column, two-columns, three-columns, left-sidebar, right-sidebar, fluid-layout, responsive-layout, custom-background, custom-colors, custom-header, custom-menu, editor-style, featured-images, flexible-header, front-page-post-form, full-width-template, post-formats, rtl-language-support, sticky-post, theme-options, threaded-comments, translation-ready, genesis, mobile-first, responsive, clean Text Domain: trestle GitHub Theme URI: MIGHTYminnow/trestle @@ -24,6 +24,9 @@ - Objects - Forms & Buttons - Tables + - Screen Reader Text + - Skip Links + - Accessible Menu - Structure and Layout - Site Containers - Bubble Layout @@ -129,7 +132,6 @@ input[type="search"] { display: table; } - /* Defaults ---------------------------------------------------------------------------------------------------- */ @@ -151,6 +153,10 @@ body { line-height: 1.625; } +body.bubble { + background-color: #f5f5f5; +} + /* Used in the editor */ body.mce-content-body { width: auto; @@ -158,10 +164,7 @@ body.mce-content-body { float: none; -webkit-font-smoothing: auto !important; font-smoothing: auto !important; -} - -body.bubble { - background-color: #f5f5f5; + background: #fff; } a, @@ -609,46 +612,6 @@ body .red:hover { border-color: #555; } -body .blue { - background-color: #0971b2; - border-color: #0971b2; -} - -body .blue:hover { - background-color: #333; - border-color: #333; -} - -body .green { - background-color: #00a476; - border-color: #00a476; -} - -body .green:hover { - background-color: #333; - border-color: #333; -} - -.arrow-right:after, -.arrow-left:before { - display: inline-block; - font-family: FontAwesome; - font-weight: normal; - font-stretch: normal; - font-style: normal; - font-variant: normal; - line-height: 1; - -webkit-font-smoothing: antialiased; -} - -.arrow-right:after { - content: "\00a0\00a0\f0a9"; -} - -.arrow-left:before { - content: "\f0a8\00a0\00a0"; -} - /* Tables --------------------------------------------- */ @@ -681,6 +644,80 @@ td { padding: 0.6rem 0; } +/* Screen reader text +--------------------------------------------- */ + +.screen-reader-text, +.screen-reader-text span, +.screen-reader-shortcut { + position: absolute !important; + clip: rect(0, 0, 0, 0); + height: 1px; + width: 1px; + border: 0; + overflow: hidden; + color: #333; + background: #fff; +} + +.screen-reader-text:focus, +.screen-reader-shortcut:focus, +.genesis-nav-menu .search input[type="submit"]:focus, +.widget_search input[type="submit"]:focus { + clip: auto !important; + height: auto; + width: auto; + display: block; + font-size: 1em; + font-weight: bold; + padding: 15px 23px 14px; + z-index: 100000; /* Above WP toolbar. */ + text-decoration: none; + box-shadow: 0 0 2px 2px rgba(0,0,0,.6); +} + +.more-link { + position: relative; +} + +/* Skip Links +---------------------------------------------------------------------------------------------------- */ +.genesis-skip-link li { + height: 0; + width: 0; + list-style: none; +} + +/* Accessible Menu +--------------------------------------------- */ + +.menu .menu-item:focus { + position: static; +} + +.menu .menu-item > a:focus + ul.sub-menu, +.menu .menu-item.sfHover > ul.sub-menu { + left: auto; + opacity: 1; +} + +/* hide sub-menus */ +ul.sub-menu, +.genesis-nav-menu [class*="current-"] > ul.sub-menu.open, +.genesis-nav-menu [class*="current_"] > ul.sub-menu.open { + display: none !important; +} + +.genesis-nav-menu ul.sub-menu.open, +.genesis-nav-menu ul.sub-menu.open { + display: block !important; +} + + +/* hide arrow indicators */ +span.sf-sub-indicator { + display: none; +} /* Structure and Layout @@ -721,7 +758,6 @@ Structure and Layout padding: 20px; padding: 2rem; background-color: transparent; - } .entry, @@ -740,6 +776,7 @@ Structure and Layout /* Bubble Layout --------------------------------------------- */ + .bubble .entry, .bubble .sidebar .widget, .bubble .ez-widget-area, @@ -831,7 +868,6 @@ Structure and Layout width: 100%; } - /* Common Classes ---------------------------------------------------------------------------------------------------- */ @@ -908,6 +944,35 @@ img.alignright, text-align: center; } +/* Text meant only for screen readers. */ +.screen-reader-text { + clip: rect(1px, 1px, 1px, 1px); + position: absolute !important; + height: 1px; + width: 1px; + overflow: hidden; +} + +.screen-reader-text:focus { + background-color: #f1f1f1; + border-radius: 3px; + box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6); + clip: auto !important; + color: #21759b; + display: block; + font-size: 14px; + font-size: 0.875rem; + font-weight: bold; + height: auto; + left: 5px; + line-height: normal; + padding: 15px 23px 14px; + text-decoration: none; + top: 5px; + width: auto; + z-index: 100000; /* Above WP toolbar. */ +} + /* Genesis --------------------------------------------- */ @@ -981,7 +1046,6 @@ img.alignright, margin-bottom: 2.4rem; } - /* Plugins & Widgets ---------------------------------------------------------------------------------------------------- */ @@ -1076,7 +1140,6 @@ Plugins & Widgets margin-bottom: 28px; } - /* Gravity Forms --------------------------------------------- */ @@ -1110,7 +1173,7 @@ div.gform_wrapper form .gfield_checkbox li { margin: 0; } -div.gform_wrapper ul.gfield_radio li { /* Prevent radio optoin from being cut off by default GF CSS */ +div.gform_wrapper ul.gfield_radio li { /* Prevent radio option from being cut off by default GF CSS */ padding-left: 1px !important; } @@ -1145,7 +1208,6 @@ img#wpstats { display: none; } - /* Jetpack - Blog Subscriptions --------------------------------------------- */ @@ -1318,7 +1380,6 @@ th a.wpv-header-desc:after { top: auto; } - /* Site Header ---------------------------------------------------------------------------------------------------- */ @@ -1375,7 +1436,6 @@ Site Header top: -9999px; } - /* Logo --------------------------------------------- */ @@ -1387,7 +1447,6 @@ Site Header display: inline-block !important; } - /* Header Widget Areas --------------------------------------------- */ @@ -1406,7 +1465,6 @@ Site Header text-align: center; } - /* Header Toggle Styles --------------------------------------------- */ @@ -1587,10 +1645,10 @@ Site Navigation background-color: #fff; border-bottom: 1px solid #eee; -webkit-transition: opacity .4s ease-in-out; - -moz-transition: opacity .4s ease-in-out; - -ms-transition: opacity .4s ease-in-out; - -o-transition: opacity .4s ease-in-out; - transition: opacity .4s ease-in-out; + -moz-transition: opacity .4s ease-in-out; + -ms-transition: opacity .4s ease-in-out; + -o-transition: opacity .4s ease-in-out; + transition: opacity .4s ease-in-out; } .genesis-nav-menu [class*="current-"] > ul, @@ -1636,7 +1694,6 @@ Site Navigation text-align: center; } - /* Primary Navigation --------------------------------------------- */ @@ -1696,7 +1753,6 @@ Site Navigation margin: 0 0 0 0.5em; } - /* Secondary Navigation --------------------------------------------- */ @@ -1710,7 +1766,6 @@ Site Navigation color: #111; } - /* Header Navigation --------------------------------------------- */ @@ -1737,7 +1792,6 @@ Site Navigation display: none; } - /* Header Primary Navigation --------------------------------------------- */ @@ -1766,7 +1820,6 @@ Site Navigation display: block; } - /* Content Area ---------------------------------------------------------------------------------------------------- */ @@ -1846,7 +1899,6 @@ Content Area margin-left: 0; } - .archive-pagination li { display: inline; } @@ -1863,7 +1915,6 @@ Content Area padding: 0.8rem 1.2rem; } - .pagination-next a:hover, .pagination-previous a:hover, .archive-pagination li a:hover, @@ -1959,7 +2010,6 @@ li.comment { padding: 2.4rem; } - /* Sidebars ---------------------------------------------------------------------------------------------------- */ @@ -2059,7 +2109,6 @@ Footer Widgets border: 1px solid #ddd; } - /* Site Footer ---------------------------------------------------------------------------------------------------- */ @@ -2090,7 +2139,6 @@ Site Footer margin-bottom: 0; } - /* General Components ---------------------------------------------------------------------------------------------------- */ @@ -2120,12 +2168,10 @@ table.ui-datepicker-calendar { margin-right: -125px; } - /* Specific Pages ---------------------------------------------------------------------------------------------------- */ - /* Media Queries ---------------------------------------------------------------------------------------------------- */ @@ -2178,6 +2224,7 @@ Media Queries /* Responsive Tables CSS --------------------------------------------- */ + @media (max-width: 600px) { table { @@ -2243,6 +2290,13 @@ Media Queries padding-right: 0; } + /* show sub-menus */ + ul.sub-menu, + .genesis-nav-menu ul.sub-menu.open, + .genesis-nav-menu ul.sub-menu.open { + display: block !important; + } + /* Header --------------------------------------------- */ @@ -2497,6 +2551,7 @@ Media Queries /* Non-Mobile Navigation --------------------------------------------- */ + #menu-toggle, .widget-area-toggle { display: none; @@ -2541,15 +2596,14 @@ Media Queries border-bottom-width: 0; } - /* Primary Navigation --------------------------------------------- */ + .nav-primary a { padding-right: 20px; padding-right: 2rem; } - /* Navigation Extras --------------------------------------------- */ @@ -2673,11 +2727,11 @@ Media Queries color: #333; } - /* Plugins --------------------------------------------- */ /* Events Manager */ + .em-calendar-wrapper .fullcalendar tr { display: table-row !important; }