function widget($args, $instance)
 {
     extract($args);
     /* Widget settings. */
     $title = apply_filters('widget_title', $instance['title']);
     $video_args = array('source' => $instance['source'], 'type' => $instance['type'], 'id' => $instance['id'], 'number' => $instance['number'], 'width' => $instance['width'], 'height' => $instance['height'], 'title' => $instance['v_title']);
     /* Before widget (defined by themes). */
     echo $before_widget;
     /* Display the widget title if one was input (before and after defined by themes). */
     if ($title) {
         echo $before_title . $title . $after_title;
     }
     fw_vimeowall_display($video_args);
     /* After widget (defined by themes). */
     echo $after_widget;
 }
function fw_vimeowall_shortcode($atts)
{
    $atts['echo'] = false;
    $out = fw_vimeowall_display($atts);
    return $out;
}
<?php

define('DOING_AJAX', true);
require_once preg_replace('%(.*)[/\\\\]wp-content[/\\\\].*%', '\\1', $_SERVER['SCRIPT_FILENAME']) . '/wp-load.php';
switch ($_POST['action']) {
    case 'show_video':
        $video = new FW_vimeo_videowall();
        $video->vwidth = 600;
        $video->vheight = 450;
        $video->display_single_video($_POST['id']);
        echo '<img src="' . FWVVW_URL . '/images/cross.png" class="closewindow" alt="' . __("Close window", "fwvvw") . '" title="' . __("Close window", "fwvvw") . '" />';
        break;
    case 'show_page':
        fw_vimeowall_display('paginate=0&id=' . $_POST['id'] . '&source=' . $_POST['source'] . '&type=' . $_POST['type'] . '&width=' . $_POST['width'] . '&height=' . $_POST['height'] . '&number=' . $_POST['number'] . '&page=' . $_POST['page'], false);
        break;
    default:
        break;
}