How to set up a View in Drupal that shows recent posts relative to post date of node it is on? I want to set up a View that shows all the nodes that were updated within 7 days of the node that is being viewed

So if the node being viewed has a post date of January 15, 2014, I would see posts that were published between January 8-15, 2014. 

I know there is a contextual filter involved, but it eludes me how to do this so the date used is relative to the node it is being viewed on.
No idea if possible in Views, but I created a custom block to achieve this.

function relative_posts_block_info() {
  $blocks['relative_posts'] = array(
    'info' =&gt; t('Relative Posts'),
  );

  return $blocks;
}

function relative_posts_block_view($delta = '') {
  switch ($delta) {
    case 'relative_posts':
    $block['subject'] = t('Block Title Goes Here');

    $node = menu_get_object();
    $formatted_date = date('m/d/Y H:i:s', $node-&gt;created);
    $start_date = strtotime('+2 weeks', strtotime($formatted_date));
    $end_date = strtotime('-2 weeks', strtotime($formatted_date));

    $query = new EntityFieldQuery();
    $entities = $query-&gt;entityCondition('entity_type', 'node')
    -&gt;entityCondition('bundle', 'story')
    -&gt;fieldCondition('taxonomy_vocabulary_1', 'tid', $node-&gt;taxonomy_vocabulary_1['und'][0]['tid'])
    -&gt;propertyCondition('created', array($end_date, $start_date), 'BETWEEN')
    -&gt;propertyOrderBy("created", "DESC")
    -&gt;propertyCondition('status', 1)
    -&gt;range(0, 25)
    -&gt;execute();

   $block['content'] = '&lt;ul&gt;';

  foreach($entities['node'] as $obj) {
  $node = node_load($obj-&gt;nid);
    $block['content'] .= '&lt;li&gt;' . l($node-&gt;title, "node/" . $node-&gt;nid) . '&lt;/li&gt;';
  }
  $block['content'] .= '&lt;/ul&gt;';

   break;
 }

 return $block;
}