Index: disqus.admin.inc =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/disqus/Attic/disqus.admin.inc,v retrieving revision 1.1.2.5 diff -u -r1.1.2.5 disqus.admin.inc --- disqus.admin.inc 27 Aug 2009 23:40:14 -0000 1.1.2.5 +++ disqus.admin.inc 9 Dec 2009 03:28:24 -0000 @@ -34,11 +34,12 @@ $form['visibility']['disqus_location'] = array( '#type' => 'select', '#title' => t('Location'), - '#description' => t('Display the Disqus comments in the given location. When "Block" is selected, the comments will appear in the Disqus Comments block.', array('@disquscomments' => url('admin/build/block'))), + '#description' => t('Display the Disqus comments in the given location. When "Block" is selected, the comments will appear in the Disqus Comments block. The "Injected Variable" option will provide a variable for precise placement of the comments.', array('@disquscomments' => url('admin/build/block'))), '#default_value' => variable_get('disqus_location', 'content_area'), '#options' => array( 'content_area' => t('Content Area'), 'block' => t('Block'), + 'variable' => t('Injected Variable'), ), ); $form['visibility']['disqus_weight'] = array( @@ -46,7 +47,7 @@ '#title' => t('Weight'), '#description' => t('When the comments are displayed in the content area, you can change the position at which they will be shown.'), '#default_value' => variable_get('disqus_weight', 50), - '#options' => drupal_map_assoc(array(-100, -50, -25, 0, 25, 50, 100)), + '#options' => drupal_map_assoc(array(-100, -75, -50, -25, 0, 25, 50, 75, 100)), ); $form['disqus_behavior'] = array( '#type' => 'fieldset', Index: disqus.module =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/disqus/Attic/disqus.module,v retrieving revision 1.1.2.23 diff -u -r1.1.2.23 disqus.module --- disqus.module 30 Oct 2009 17:40:34 -0000 1.1.2.23 +++ disqus.module 9 Dec 2009 03:28:24 -0000 @@ -97,13 +97,20 @@ break; case 'view': // See if we are to display Disqus in the current context. - if (!$a3 && $a4 && isset($node->disqus)) { - if (user_access('view disqus comments') && variable_get('disqus_location', 'content_area') == 'content_area') { - // Inject the comments into the node content area. - $node->content['disqus'] = array( - '#value' => theme('disqus_comments', $node->disqus), - '#weight' => variable_get('disqus_weight', 50), - ); + if (!$a3 && $a4 && isset($node->disqus) && user_access('view disqus comments')) { + // Inject Disqus into the node object. + switch (variable_get('disqus_location', 'content_area')) { + case 'content_area': + // Inject into the node content. + $node->content['disqus'] = array( + '#value' => theme('disqus_comments', $node->disqus), + '#weight' => variable_get('disqus_weight', 50), + ); + break; + case 'variable': + // Inject it into a variable. + $node->disqus_comments = theme('disqus_comments', $node->disqus); + break; } } break; @@ -147,12 +154,20 @@ } break; case 'view': - if (user_access('view disqus comments') && variable_get('disqus_location', 'content_area') == 'content_area') { - if (isset($account->disqus)) { - $account->content['disqus'] = array( - '#value' => theme('disqus_comments', $account->disqus), - '#weight' => variable_get('disqus_weight', 50), - ); + if (isset($account->disqus) && user_access('view disqus comments')) { + // Inject Disqus into the user object. + switch (variable_get('disqus_location', 'content_area')) { + case 'content_area': + // Inject into the user content. + $account->content['disqus'] = array( + '#value' => theme('disqus_comments', $account->disqus), + '#weight' => variable_get('disqus_weight', 50), + ); + break; + case 'variable': + // Inject it into a variable. + $account->disqus_comments = theme('disqus_comments', $account->disqus); + break; } } break;