function impa_profile_shortcode($atts, $content = null)
{
    extract(shortcode_atts(array('id' => '', 'orderby' => 'menu_order', 'order' => 'ASC'), $atts));
    if ($id == '') {
        $query_args = array('post_type' => 'employee', 'posts_per_page' => -1, 'orderby' => $orderby, 'order' => $order);
    } else {
        $query_args = array('post_type' => 'employee', 'post__in' => explode(',', $id), 'posts_per_page' => -1, 'orderby' => $orderby, 'order' => $order);
    }
    global $post;
    $profiles_array = get_posts($query_args);
    $output = '';
    foreach ($profiles_array as $post) {
        setup_postdata($post);
        $output .= '<div class="shortcode-agent-wrap">';
        $output .= '<a href="' . get_permalink() . '">' . get_the_post_thumbnail($post->ID, 'employee-thumbnail') . '</a>';
        $output .= '<div class="shortcode-agent-details"><a class="fn" href="' . get_permalink() . '">' . get_the_title() . '</a>';
        $output .= impa_employee_details();
        if (function_exists('_p2p_init') && function_exists('agentpress_listings_init') || function_exists('_p2p_init') && function_exists('wp_listings_init')) {
            $has_listings = impa_has_listings($post->ID);
            if (!empty($has_listings)) {
                echo '<p><a class="agent-listings-link" href="' . get_permalink() . '#agent-listings">View My Listings</a></p>';
            }
        }
        $output .= '</div>';
        $output .= impa_employee_social();
        $output .= '</div><!-- .shortcode-agent-wrap -->';
    }
    wp_reset_postdata();
    return $output;
}
function single_employee_post_content()
{
    global $post;
    ?>

	<div itemscope class="entry-content impa-single-employee">

	<div class="agent-wrap" itemscope itemtype="http://schema.org/Person">
		<?php 
    $thumb_id = get_post_thumbnail_id();
    $thumb_url = wp_get_attachment_image_src($thumb_id, 'employee-full', true);
    echo '<img src="' . $thumb_url[0] . '" alt="' . get_the_title() . ' photo" class="attachment-employee-full wp-post-image" itemprop="image" />';
    ?>
		<div class="agent-details vcard">
			<span class="fn" style="display:none;" itemprop="name"><?php 
    the_title();
    ?>
</span>
			<?php 
    echo impa_employee_details();
    ?>
			<?php 
    echo impa_employee_social();
    ?>
		</div> <!-- .agent-details -->
	</div> <!-- .agent-wrap -->

	<div class="agent-bio">
		<?php 
    the_content();
    ?>
	</div><!-- .agent-bio -->

	<?php 
    if (function_exists('_p2p_init') && function_exists('agentpress_listings_init') || function_exists('_p2p_init') && function_exists('wp_listings_init')) {
        echo '
		<div class="connected-agent-listings">';
        impa_connected_listings_markup();
        echo '</div>';
    }
    ?>

	</div><!-- .entry-content -->

<?php 
}
/**
 * Outputs markup for the connected agents on single listings
 */
function impa_connected_agents_markup()
{
    $profiles = impa_get_connected_posts_of_type('agents_to_listings');
    if (empty($profiles)) {
        return;
    }
    echo apply_filters('impa_connected_agent_heading', $heading = '<h4>Listing Presented by:</h4>');
    global $post;
    foreach ($profiles as $profile) {
        setup_postdata($profile);
        $post = $profile;
        $thumb_id = get_post_thumbnail_id();
        $thumb_url = wp_get_attachment_image_src($thumb_id, 'agent-profile-photo', true);
        echo '
		<div ', post_class('connected-agents vcard'), ' itemscope itemtype="http://schema.org/Person">
			<div class="agent-thumb"><a href="', get_permalink($profile->ID), '"><img src="', $thumb_url[0], '" alt="', get_the_title(), ' photo" class="attachment-agent-profile-photo wp-post-image alignleft" itemprop="image" /></a></div><!-- .agent-thumb -->
			<div class="agent-details"><h5><a class="fn agent-name" itemprop="name" href="', get_permalink($profile->ID), '">', get_the_title($profile->ID), '</a></h5>';
        echo impa_employee_details();
        echo impa_employee_social();
        echo '</div><!-- .agent-details --></div><!-- .connected-agents .vcard -->';
    }
    echo '<div class="clearfix"></div>';
    wp_reset_postdata();
}