Related Posts: if there is no category use tags

There is no mistake in code it is not working because of just comma mistake use this i have made charges into it.

function dtwd_related_posts_shortcode($atts){
        extract(shortcode_atts(array(
            'count'=> '3',
            'title' => 'More useful tips',
        ), $atts));
        global $post;
        $current_cat = get_the_category($post->ID);
        $current_cat = $current_cat[0]->cat_ID;
        $this_cat="";
        $tag_ids = array();
        $tags = get_the_tags($post->ID);
        if ($tags) {
            foreach($tags as $tag) {
                $tag_ids[] = $tag->term_id;
            }
        } 
        else {
            $this_cat = $current_cat;
        }
        $args = array(
            'post_type' => get_post_type(),
            'posts_per_page' => $count,
            'orderby' => date,
            'order' => 'DESC',
            'tag__in' => $tag_ids,
            'cat' => $this_cat,
            'exclude' => $post->ID
        );
        $dtwd_related_posts = get_posts($args);
        if ( empty($dtwd_related_posts) ) {
            $args['tag__in'] = '';
            $args['cat'] = $current_cat;
            $dtwd_related_posts = get_posts($args);
            }
            if ( empty($dtwd_related_posts) ) {
            return;
        }
        $post_list="";
        foreach($dtwd_related_posts as $dtwd_related) {
        $post_list .= '<li><a href="' . get_permalink($dtwd_related->ID) . '">' . $dtwd_related->post_title . '</a></li>';
        }
        return sprintf('
        <div class="dtwd_related-posts">
        <h4>%s</h4>
        <ul>%s</ul>
        </div> <!- .dtwd_related-posts ->
        ', $title, $post_list );
}
add_shortcode('dtwd_related_posts_sc', 'dtwd_related_posts_shortcode');

Hope this help.