diff --git a/APIEXAMPLE/contentanalysisexample.info b/APIEXAMPLE/contentanalysisexample.info
index 2f306ae..b6e00fb 100644
--- a/APIEXAMPLE/contentanalysisexample.info
+++ b/APIEXAMPLE/contentanalysisexample.info
@@ -1,4 +1,3 @@
-; $Id: contentanalysisexample.info,v 1.5 2010/05/08 16:12:13 tomdude48 Exp $
 name = "Content Analysis API Example"
 description = "Example Content Analyzer module"
 package = Content analysis
diff --git a/APIEXAMPLE/contentanalysisexample.js b/APIEXAMPLE/contentanalysisexample.js
index 753121a..e3da0dc 100644
--- a/APIEXAMPLE/contentanalysisexample.js
+++ b/APIEXAMPLE/contentanalysisexample.js
@@ -1,4 +1,3 @@
-// $Id: contentanalysisexample.js,v 1.5 2010/05/08 16:12:13 tomdude48 Exp $
 (function ($) {
 /*
  * Implementation of hook_contentanalysis_data()
diff --git a/contentanalysis.admin.css b/contentanalysis.admin.css
index f5ef283..e69de29 100644
--- a/contentanalysis.admin.css
+++ b/contentanalysis.admin.css
@@ -1 +0,0 @@
-/* $Id: contentanalysis.admin.css,v 1.1.2.4 2010/06/01 21:23:39 tomdude48 Exp $ */
\ No newline at end of file
diff --git a/contentanalysis.admin.inc b/contentanalysis.admin.inc
index 2486e32..c06fcee 100644
--- a/contentanalysis.admin.inc
+++ b/contentanalysis.admin.inc
@@ -1,5 +1,4 @@
 <?php
-// $Id: contentanalysis.admin.inc,v 1.1.2.4 2010/06/01 21:23:39 tomdude48 Exp $
 /**
  * @file * Admin include file. 
 */
@@ -37,10 +36,10 @@
   );
   
   $form['contentanalysis_node_report_display'] = array(    
-    '#type' => 'radios',    
+    '#type' => 'radios', 
     '#title' => t('Node edit report style'), 
     '#options' => $options,
-    '#default_value' => variable_get('contentanalysis_node_report_display', 'both'),     
+    '#default_value' => variable_get('contentanalysis_node_report_display', 'both'), 
     '#description' => t('Select the style of report you would like when launching from the node edit form. Dialog is the standard modal report. Inline inserts recommendations directly into the node edit form.')     
   );     
   
@@ -72,8 +71,7 @@
 }
 
 function contentanalysis_admin_analyzer_settings_form() {
-  drupal_set_title(t('Analyzer settings'), PASS_THROUGH);  
-	
+  drupal_set_title(t('Analyzer settings'), PASS_THROUGH); 
   $form = contentanalysis_admin_analyzer_settings_element();
   $form['submit'] = array(
     '#type' => 'submit',
@@ -96,15 +94,15 @@ function contentanalysis_admin_analyzer_settings_element($mode = 'global') {
     $form['#tree'] = TRUE;
   }
   foreach ($analyzer_defs AS $name => $def) {
-  	if (isset($def['settings form elements callback'])) {
-	    $form[$name] = array(
-	      '#type' => 'fieldset',
-	      '#title' => $def['title'],
-	      //'#description' => t('Check the below boxes to display widgets in node links by content types.'),
-	      '#collapsible' => TRUE,
-	      '#collapsed' => ($mode == 'global') ? FALSE : TRUE,
-	    );
-	    $setting = isset($settings[$name]) ? $settings[$name] : NULL;
+    if (isset($def['settings form elements callback'])) {
+      $form[$name] = array(
+        '#type' => 'fieldset',
+        '#title' => $def['title'],
+        //'#description' => t('Check the below boxes to display widgets in node links by content types.'),
+        '#collapsible' => TRUE,
+        '#collapsed' => ($mode == 'global') ? FALSE : TRUE,
+      );
+      $setting = isset($settings[$name]) ? $settings[$name] : NULL;
       $form[$name] = array_merge($form[$name], call_user_func($def['settings form elements callback'], $setting, $analyzer_defs[$name]));
     }
   } 
diff --git a/contentanalysis.css b/contentanalysis.css
index 4e569eb..f1b273e 100644
--- a/contentanalysis.css
+++ b/contentanalysis.css
@@ -1,5 +1,3 @@
-/* $Id: contentanalysis.css,v 1.1.2.4 2010/06/01 21:23:39 tomdude48 Exp $ */
-
 /*
  * modal dialog box styles
  */
diff --git a/contentanalysis.info b/contentanalysis.info
index 86cee96..8b1183d 100644
--- a/contentanalysis.info
+++ b/contentanalysis.info
@@ -1,4 +1,3 @@
-; $Id: contentanalysis.info,v 1.1.2.4 2010/06/01 21:23:39 tomdude48 Exp $
 name = "Content Analysis API"
 description = "Provides an API for content analyzers"
 package = Content analysis
diff --git a/contentanalysis.install b/contentanalysis.install
index a9f1faa..67e45c0 100644
--- a/contentanalysis.install
+++ b/contentanalysis.install
@@ -1,5 +1,4 @@
 <?php
-// $Id: contentanalysis.install,v 1.1.2.5 2010/09/26 00:32:57 tomdude48 Exp $
 /**
  * @file 
  * Install include file. Implements database schema. 
diff --git a/contentanalysis.js b/contentanalysis.js
index 1df3def..cb9b61e 100644
--- a/contentanalysis.js
+++ b/contentanalysis.js
@@ -1,356 +1,355 @@
-// $Id: contentanalysis.js,v 1.1.2.7 2010/11/09 21:50:14 tomdude48 Exp $
 var contentanalysis = contentanalysis || {};
 
 (function ($, $$) {
-	$.extend($$, {
-		contentanalysisPrevAnalyzerTab: '',
-		contentanalysisPrevReportTab: '',
-		contentanalysisCurrentAnalyzerTab: '',
-		contentanalysisCurrentReportTab: '',
-		contentanalysisReportActiveTab: {},
-		
-		init: function() {
-			$$.contentanalysis_contentanalysisui();
-		},
-		
-		contentanalysis_contentanalysisui: function() {
-		    if($('#modalContent div.analyzers h3.analyzer').size() > 0) {
-		        $$.contentanalysis_show_analyzer_tab($('div.analyzers h3.analyzer').get(0));
-		        $('div.analyzers h3.analyzer').mousedown(function () {
-		        	$$.contentanalysis_show_analyzer_tab(this);
-		        }) 
-		        $('h3.contentanalysis-report-tab').mousedown(function () { 
-		        	$$.contentanalysis_show_report_tab(this);
-		        })
-		    }	
-		},
+  $.extend($$, {
+    contentanalysisPrevAnalyzerTab: '',
+    contentanalysisPrevReportTab: '',
+    contentanalysisCurrentAnalyzerTab: '',
+    contentanalysisCurrentReportTab: '',
+    contentanalysisReportActiveTab: {},
+    
+    init: function() {
+      $$.contentanalysis_contentanalysisui();
+    },
+    
+    contentanalysis_contentanalysisui: function() {
+        if($('#modalContent div.analyzers h3.analyzer').size() > 0) {
+            $$.contentanalysis_show_analyzer_tab($('div.analyzers h3.analyzer').get(0));
+            $('div.analyzers h3.analyzer').mousedown(function () {
+              $$.contentanalysis_show_analyzer_tab(this);
+            }) 
+            $('h3.contentanalysis-report-tab').mousedown(function () { 
+              $$.contentanalysis_show_report_tab(this);
+            })
+        }  
+    },
 
-		contentanalysis_back: function() {
-			$$.contentanalysis_show_analyzer_tab(contentanalysisPrevAnalyzerTab);
-		  //contentanalysis_show_report_tab(contentanalysisPrevReportTab);
-		},
+    contentanalysis_back: function() {
+      $$.contentanalysis_show_analyzer_tab(contentanalysisPrevAnalyzerTab);
+      //contentanalysis_show_report_tab(contentanalysisPrevReportTab);
+    },
 
-		contentanalysis_show_analyzer_tab: function (theTab){
-		  $('div.analysis-results div.analyzer-analysis:eq(' + $('.analyzers h3.analyzer').index(theTab) + ')').children('.content-analysis-tab:first').addClass('active');
-		  $('div.analysis-results div.analyzer-analysis').hide();
-		  $('.analyzers h3.analyzer').removeClass('active');
-		  $(theTab).addClass('active');
-		  $('div.analysis-results div.analyzer-analysis:eq(' + $('.analyzers h3.analyzer').index(theTab) + ')').show();
-		  $('.content-analysis-results').hide();
-		
-		  var id = $(theTab).attr('id');
-		  var e = id.split('-');
-		  var analyzer = e[3];
-		  
-		  if($$.contentanalysisReportActiveTab[analyzer]) {
-		    $$.contentanalysis_show_report_tab($('#contentanalysis-report-tab-' + analyzer + '-' + $$.contentanalysisReportActiveTab[analyzer]));
-		  }
-		  else {
-		    $$.contentanalysis_show_report_tab($('#contentanalysis-report-tab-' + analyzer + '-0'));
-		  }
-		  $$.contentanalysisPrevAnalyzerTab = $$.contentanalysisCurrentAnalyzerTab;
-		  $$.contentanalysisCurrentAnalyzerTab = theTab;  
-		},
+    contentanalysis_show_analyzer_tab: function (theTab){
+      $('div.analysis-results div.analyzer-analysis:eq(' + $('.analyzers h3.analyzer').index(theTab) + ')').children('.content-analysis-tab:first').addClass('active');
+      $('div.analysis-results div.analyzer-analysis').hide();
+      $('.analyzers h3.analyzer').removeClass('active');
+      $(theTab).addClass('active');
+      $('div.analysis-results div.analyzer-analysis:eq(' + $('.analyzers h3.analyzer').index(theTab) + ')').show();
+      $('.content-analysis-results').hide();
+    
+      var id = $(theTab).attr('id');
+      var e = id.split('-');
+      var analyzer = e[3];
+      
+      if($$.contentanalysisReportActiveTab[analyzer]) {
+        $$.contentanalysis_show_report_tab($('#contentanalysis-report-tab-' + analyzer + '-' + $$.contentanalysisReportActiveTab[analyzer]));
+      }
+      else {
+        $$.contentanalysis_show_report_tab($('#contentanalysis-report-tab-' + analyzer + '-0'));
+      }
+      $$.contentanalysisPrevAnalyzerTab = $$.contentanalysisCurrentAnalyzerTab;
+      $$.contentanalysisCurrentAnalyzerTab = theTab;  
+    },
 
-		contentanalysis_show_report_tab: function (theTab){
-		  var id = $(theTab).attr('id');
-		  var e = id.split('-');
-		  $$.contentanalysisReportActiveTab[e[3]] = e[4];
-		  $('h3.contentanalysis-report-tab').removeClass('active');  
-		  $(theTab).addClass('active');
-		  $('.contentanalysis-results-section').hide();
-		
-		  var tabs = $("#contentanalysis-report-tabs-" + e[3]);
-		  //tabs.css('border','2px solid red');
-		  var pos = $("#contentanalysis-report-tabs-" + e[3]).position(); 
-		  var offset = $("#contentanalysis-report-tabs-" + e[3]).offset(); 
-		  var height = tabs.height();
-		  var top = (pos.top+height)+"px";
-		  var left = (pos.left)+"px";
-		  
-		  var sec_id = id.replace('tab', 'results');
-		  var result_id = sec_id.replace('-'+e[4],'')
-		  //$('#' + result_id).css({'top': top, 'left': left}); 
-		  $('#' + result_id).css('top', top); 
-		  //$('#' + result_id).css('border', '2px solid green'); 
-		  $('#' + sec_id).show();
-		//alert("pos.left="+pos.left+",pos.top="+pos.top+",offset.left="+offset.left+",offset.top="+offset.top);
-		  $$.contentanalysisPrevReportTab = $$.contentanalysisCurrentReportTab;
-		  $$.contentanalysisCurrentReportTab = theTab; 
-		},
+    contentanalysis_show_report_tab: function (theTab){
+      var id = $(theTab).attr('id');
+      var e = id.split('-');
+      $$.contentanalysisReportActiveTab[e[3]] = e[4];
+      $('h3.contentanalysis-report-tab').removeClass('active');  
+      $(theTab).addClass('active');
+      $('.contentanalysis-results-section').hide();
+    
+      var tabs = $("#contentanalysis-report-tabs-" + e[3]);
+      //tabs.css('border','2px solid red');
+      var pos = $("#contentanalysis-report-tabs-" + e[3]).position(); 
+      var offset = $("#contentanalysis-report-tabs-" + e[3]).offset(); 
+      var height = tabs.height();
+      var top = (pos.top+height)+"px";
+      var left = (pos.left)+"px";
+      
+      var sec_id = id.replace('tab', 'results');
+      var result_id = sec_id.replace('-'+e[4],'')
+      //$('#' + result_id).css({'top': top, 'left': left}); 
+      $('#' + result_id).css('top', top); 
+      //$('#' + result_id).css('border', '2px solid green'); 
+      $('#' + sec_id).show();
+    //alert("pos.left="+pos.left+",pos.top="+pos.top+",offset.left="+offset.left+",offset.top="+offset.top);
+      $$.contentanalysisPrevReportTab = $$.contentanalysisCurrentReportTab;
+      $$.contentanalysisCurrentReportTab = theTab; 
+    },
 
-		// called from inline Analyze content button
-		contentanalysis_inline_analysis: function() {
-		  Drupal.settings.contentanalysis.display_dialog = 0;
-		  Drupal.settings.contentanalysis.display_inline = 1;
-		  //$('#contentanalysis-ininline-analysis-button').after('<span class="throbber">Loading...</span>');
-		  //$('#contentanalysis-ininline-analysis-button').after(Drupal.settings.contentanalysis.throbber);
-		  $('#contentanalysis-buttons').after('<div class="ahah-progress ahah-progress-throbber"><div class="throbber">&nbsp;</div><div class="message">' + Drupal.t('Analyzing...') + '</div></div>');
-		  $$.contentanalysis_analyze();
-		},
+    // called from inline Analyze content button
+    contentanalysis_inline_analysis: function() {
+      Drupal.settings.contentanalysis.display_dialog = 0;
+      Drupal.settings.contentanalysis.display_inline = 1;
+      //$('#contentanalysis-ininline-analysis-button').after('<span class="throbber">Loading...</span>');
+      //$('#contentanalysis-ininline-analysis-button').after(Drupal.settings.contentanalysis.throbber);
+      $('#contentanalysis-buttons').after('<div class="ahah-progress ahah-progress-throbber"><div class="throbber">&nbsp;</div><div class="message">' + Drupal.t('Analyzing...') + '</div></div>');
+      $$.contentanalysis_analyze();
+    },
 
-		// called from inline Analyze content button
-		contentanalysis_dialog_analysis: function() {
-		  Drupal.settings.contentanalysis.display_dialog = 1;
-		  Drupal.settings.contentanalysis.display_inline = 0;
-		  $$.contentanalysis_analyze();
-		},
+    // called from inline Analyze content button
+    contentanalysis_dialog_analysis: function() {
+      Drupal.settings.contentanalysis.display_dialog = 1;
+      Drupal.settings.contentanalysis.display_inline = 0;
+      $$.contentanalysis_analyze();
+    },
 
-		// called from inline Analyze content button
-		contentanalysis_full_analysis: function() {
-		  Drupal.settings.contentanalysis.display_dialog = 1;
-		  Drupal.settings.contentanalysis.display_inline = 1;
-		  
-		  $$.contentanalysis_analyze();
-		},
+    // called from inline Analyze content button
+    contentanalysis_full_analysis: function() {
+      Drupal.settings.contentanalysis.display_dialog = 1;
+      Drupal.settings.contentanalysis.display_inline = 1;
+      
+      $$.contentanalysis_analyze();
+    },
 
-		// called from inline Analyze content button
-		contentanalysis_refresh_analysis: function(analyzer) {
-		  Drupal.settings.contentanalysis.display_dialog = 0;
-		  Drupal.settings.contentanalysis.display_inline = 1;
-		  //$('.contentanalysis-refresh-link-' + analyzer).replaceWith('<span class="throbber">Loading...</span>');
-		  $('.contentanalysis-refresh-link-' + analyzer).replaceWith('<div class="ahah-progress ahah-progress-throbber"><div class="throbber">&nbsp;</div></div>');
-		  $$.contentanalysis_analyze(analyzer);
-		},
+    // called from inline Analyze content button
+    contentanalysis_refresh_analysis: function(analyzer) {
+      Drupal.settings.contentanalysis.display_dialog = 0;
+      Drupal.settings.contentanalysis.display_inline = 1;
+      //$('.contentanalysis-refresh-link-' + analyzer).replaceWith('<span class="throbber">Loading...</span>');
+      $('.contentanalysis-refresh-link-' + analyzer).replaceWith('<div class="ahah-progress ahah-progress-throbber"><div class="throbber">&nbsp;</div></div>');
+      $$.contentanalysis_analyze(analyzer);
+    },
 
-		contentanalysis_analyze: function(analyzer_override) {
-		  // if TinyMCE is used, turn off and on to save body text to textarea
-		  var data = { 
-		    'nid': -1,
-		    'node_type': -1,
-		    'source': -1,
-		    'analyzers':-1,
-		    'title': -1, 
-		    'body': -1,
-		    'body_summary': -1,
-		    'page_title':-1, 
-		    'meta_title':-1,
-		    'meta_keywords':-1, 
-		    'meta_description':-1,
-		    'path_alias': -1,
-		    'path_pathauto': -1,
-		    'url': -1,
-		    'page': -1,
-		    'body_input_filter': -1,
-		    'hidden': -1,    
-		    'code': Drupal.settings.contentanalysis.code,
-		    'action': -1
-		  };
-		  if(analyzer_override) {
-		    data.action = 'refresh';
-		  }
-		  if ($('#contentanalysis-page-analyzer-form').html()) {
-		    data.source = 'admin-form';
-		    data.body = $('[name=input]').val()
-		    data.nid = $('[name=input_nid]').val()
-		    data.url = $('[name=input_url]').val()
-		    if(data.body == '') {
-		      data.body = -1;
-		    }
-		    if(data.nid == '') {
-		      data.nid = -1;
-		    }
-		    if(data.url == '') {
-		      data.url = -1;
-		    }    
-		  } else if ($('.node-form').html()) {
-		    data.source = 'node-edit-form';
-		    // Turn off TinyMCE if enabled
-		    if(typeof tinyMCE == 'object') {
-		    	tinyMCE.get('edit-body-und-0-value').hide();
-		    }
-		    // Turn off CKEditor if any.
-		    var ckeditor = false;
-		    if ($('#cke_edit-body-und-0-value').html()) {
-		      $('#wysiwyg-toggle-edit-body-und-0-value').click();
-		      ckeditor = true;
-		    }
-		
-		    data.title = $('#edit-title').val();
-		    data.body = $('#edit-body-und-0-value').val();
-		    if ($('#edit-body-und-0-summary').val() != null) {
-		      data.body_summary = $('#edit-body-und-0-summary').val();
-		    } 
-		    data.nid = Drupal.settings.contentanalysis.nid
-		    data.node_type = Drupal.settings.contentanalysis.node_type
-		    data.body_input_filter = $("select[name='body[und][0][format]'] option:selected").val();
-		    
-		    if ($('#edit-page-title').val() != null) {
-		      data.page_title = $('#edit-page-title').val();
-		    }    
-		    // check if metatag module fields exist
-		    if ($('#edit-metatags-title-value').val() != null) {
-		      data.meta_title = $('#edit-metatags-title-value').val();
-		    }
-		    if ($('#edit-metatags-keywords-value').val() != null) {
-		      data.meta_keywords = $('#edit-metatags-keywords-value').val();
-		    }
-		    if ($('#edit-metatags-description-value').val() != null) {
-		      data.meta_description = $('#edit-metatags-description-value').val();
-		    }
-		    if ($('#edit-path-alias').val() != null) {
-		      data.url = window.location.host + Drupal.settings.contentanalysis.base_path + $('#edit-path-alias').val();
-		      data.path_alias = $('#edit-path-alias').val();
-		    }
-		    if ($("input[name='path[pathauto]']:checked").val() != null) {
-		    	data.path_pathauto = 1;
-		    }
-		    // Turn back on tinyMCE
-		    if(typeof tinyMCE == 'object') {
-		    	tinyMCE.get('edit-body-und-0-value').show();
-		    }	
-		    // Turn back on CKEditor if needed.
-		    if (ckeditor) {
-		      $('#wysiwyg-toggle-edit-body-und-0-value').click();
-		    }
-		
-		  } else {
-		    data.source = 'page-link';
-		    data.page = $('html').html()  
-		    data.url = window.location.href
-		  }
-		  if(Drupal.settings.contentanalysis.hidden != null) {
-		    data.hidden = Drupal.settings.contentanalysis.hidden;
-		  }
-		  
-		  //alert('data.nid ' + data.nid)
-		  var analyzers_arr = new Array();
-		  if(analyzer_override) {
-		    data.analyzers = analyzer_override;
-		    analyzers_arr[0] = data.analyzers; 
-		  }
-		  else if($('#contentanalysis_analyzers_override input').val() != null) {    
-		    data.analyzers = $('#contentanalysis_analyzers_override input').val();
-		    analyzers_arr[0] = data.analyzers;
-		  } 
-		  else {
-		    var i = 0;
-		    $('#contentanalysis_analyzers .form-checkbox:checked').each ( function () {  
-		      var expr = new RegExp(/\[[^\]]+\]/);
-		      analyzers_arr[i] = expr.exec($(this).attr('name'))[0].replace(']', '').replace('[','');    
-		      i++;
-		    })
-		    data.analyzers = analyzers_arr.join(',');
-		  }
-		  // call contentanalysis_data for enabed analyzers
-		  for(var i in analyzers_arr) {
-		    var aid = analyzers_arr[i];
-		    var module = Drupal.settings.contentanalysis.analyzer_modules[aid].module;
-		    if (eval('typeof ' + module + '_contentanalysis_data == "function"')) {
-		      d = eval(module + '_contentanalysis_data')(aid, data);
-		      for(var k in d) {
-		        eval('data.ao_'+aid+'_'+k+' = "'+d[k]+'";');
-		      }
-		    }
-		  }  
-		  $('#contentanalysis-buttons').hide(); 
-		  $.ajax({
-		    type: 'POST',
-		    url: Drupal.settings.contentanalysis.analyze_callback,
-		    data: data,
-		    dataType: 'json',
-		    success: function(data, textStatus) {
-		      analyzers_arr = data.inputs['analyzers'].split(",");
-		      if(Drupal.settings.contentanalysis.display_dialog == 1) {
-		        $('#analysis-modal').append(data.main['output']);
-		        $('#analysis-modal .progress').remove();
-		        //Drupal.behaviors.contentanalysisui();
-		        $$.contentanalysis_contentanalysisui()
-		      }
-		      // display inline if enabled
-		      if(Drupal.settings.contentanalysis.display_inline == 1) {
-		        if(data.inputs['action'] == 'refresh') {
-		          //if($('.contentanalysis_section_analysis').length > 0)
-		          for(i in analyzers_arr) {
-		            aid = analyzers_arr[i];
-		            $('.contentanalysis-report-'+aid+'-page_title').replaceWith(data.page_title['output']);
-		            $('.contentanalysis-report-'+aid+'-body').replaceWith(data.body['output']);
-		            $('.contentanalysis-report-'+aid+'-meta_description').replaceWith(data.meta_description['output']);
-		            $('.contentanalysis-report-'+aid+'-meta_keywords').replaceWith(data.meta_keywords['output']);
-		          }
-		        }
-		        else {
-		          var show_title = true;
-		          if($('.form-item-metatags-title-value').length > 0) {
-		            $('.form-item-metatags-title-value > .contentanalysis_section_analysis').remove();
-		            $('.form-item-metatags-title-value').append(data.page_title['output']);
-		            // check if metatag-title contains [node:title] token
-		            if ($('#edit-metatags-title-value').val() != null) {
-		              var meta_title = $('#edit-metatags-title-value').val();
-		              if(meta_title.indexOf("[node:title]") == -1) {
-		            	//show_title = false;
-		              }
-		            }
-		          } 
-		          if (show_title) {
-		            $('.form-item-title > .contentanalysis_section_analysis').remove();
-		            $('.form-item-title').append(data.page_title['output']);				
-		          }
-		    
-		          $('#edit-body > .contentanalysis_section_analysis').remove();
-		          $('#edit-body').append(data.body['output']);
-		          // check newer nodewords format
-		          if(($('.form-item-metatags-description-value').length > 0) && data.meta_description != null) {
-		            $('.form-item-metatags-description-value > .contentanalysis_section_analysis').remove();
-		            $('.form-item-metatags-description-value').append(data.meta_description['output']);
-		          }
-		          
-		          if(($('.form-item-metatags-keywords-value').length > 0) && data.meta_keywords != null) {
-		            $('.form-item-metatags-keywords-value > .contentanalysis_section_analysis').remove();
-		            $('.form-item-metatags-keywords-value').append(data.meta_keywords['output']);
-		          }
-		        }
-		        for(var i in analyzers_arr) {
-		          var aid = analyzers_arr[i];
-		          h = '<a href="#" class="contentanalysis-refresh-link-' + aid + '" onclick="contentanalysis.contentanalysis_refresh_analysis(\'' + aid + '\'); return false;">';
-		          h += '<img src="' + Drupal.settings.contentanalysis.path_to_module + '/icons/refresh.png" alt="refresh" />';
-		          h += '</a>';
-		          $('.contentanalysis-report-' + aid + ' label').append(h);
-		        } 
-					}      
-		      // call any modules post analysis hooks      
-		      for(var i in analyzers_arr) {
-		        var aid = analyzers_arr[i];        
-		        var module = Drupal.settings.contentanalysis.analyzer_modules[aid].module;     
-		        if (eval('typeof ' + module + '_contentanalysis_analysis_success == "function"')) {
-		          eval(module + '_contentanalysis_analysis_success')(aid, data);
-		        }
-		      } 
-		      if(typeof Drupal.behaviors.collapse == 'function') {
-		    	  Drupal.behaviors.collapse();  
-		      }
-		      $('.ahah-progress-throbber').remove();
-		      $('#contentanalysis-buttons').show();
-		    },
-		    error: function(xhr, status) {
-		      alert(xhr.responseText.toString());
-		      $('.ahah-progress-throbber').remove();
-		      $('#contentanalysis-buttons').show();
-		    }
-		  });
-		  return false;	
-		}
-	});	
+    contentanalysis_analyze: function(analyzer_override) {
+      // if TinyMCE is used, turn off and on to save body text to textarea
+      var data = { 
+        'nid': -1,
+        'node_type': -1,
+        'source': -1,
+        'analyzers':-1,
+        'title': -1, 
+        'body': -1,
+        'body_summary': -1,
+        'page_title':-1, 
+        'meta_title':-1,
+        'meta_keywords':-1, 
+        'meta_description':-1,
+        'path_alias': -1,
+        'path_pathauto': -1,
+        'url': -1,
+        'page': -1,
+        'body_input_filter': -1,
+        'hidden': -1,    
+        'code': Drupal.settings.contentanalysis.code,
+        'action': -1
+      };
+      if(analyzer_override) {
+        data.action = 'refresh';
+      }
+      if ($('#contentanalysis-page-analyzer-form').html()) {
+        data.source = 'admin-form';
+        data.body = $('[name=input]').val()
+        data.nid = $('[name=input_nid]').val()
+        data.url = $('[name=input_url]').val()
+        if(data.body == '') {
+          data.body = -1;
+        }
+        if(data.nid == '') {
+          data.nid = -1;
+        }
+        if(data.url == '') {
+          data.url = -1;
+        }    
+      } else if ($('.node-form').html()) {
+        data.source = 'node-edit-form';
+        // Turn off TinyMCE if enabled
+        if(typeof tinyMCE == 'object') {
+          tinyMCE.get('edit-body-und-0-value').hide();
+        }
+        // Turn off CKEditor if any.
+        var ckeditor = false;
+        if ($('#cke_edit-body-und-0-value').html()) {
+          $('#wysiwyg-toggle-edit-body-und-0-value').click();
+          ckeditor = true;
+        }
+    
+        data.title = $('#edit-title').val();
+        data.body = $('#edit-body-und-0-value').val();
+        if ($('#edit-body-und-0-summary').val() != null) {
+          data.body_summary = $('#edit-body-und-0-summary').val();
+        } 
+        data.nid = Drupal.settings.contentanalysis.nid
+        data.node_type = Drupal.settings.contentanalysis.node_type
+        data.body_input_filter = $("select[name='body[und][0][format]'] option:selected").val();
+        
+        if ($('#edit-page-title').val() != null) {
+          data.page_title = $('#edit-page-title').val();
+        }    
+        // check if metatag module fields exist
+        if ($('#edit-metatags-title-value').val() != null) {
+          data.meta_title = $('#edit-metatags-title-value').val();
+        }
+        if ($('#edit-metatags-keywords-value').val() != null) {
+          data.meta_keywords = $('#edit-metatags-keywords-value').val();
+        }
+        if ($('#edit-metatags-description-value').val() != null) {
+          data.meta_description = $('#edit-metatags-description-value').val();
+        }
+        if ($('#edit-path-alias').val() != null) {
+          data.url = window.location.host + Drupal.settings.contentanalysis.base_path + $('#edit-path-alias').val();
+          data.path_alias = $('#edit-path-alias').val();
+        }
+        if ($("input[name='path[pathauto]']:checked").val() != null) {
+          data.path_pathauto = 1;
+        }
+        // Turn back on tinyMCE
+        if(typeof tinyMCE == 'object') {
+          tinyMCE.get('edit-body-und-0-value').show();
+        }  
+        // Turn back on CKEditor if needed.
+        if (ckeditor) {
+          $('#wysiwyg-toggle-edit-body-und-0-value').click();
+        }
+    
+      } else {
+        data.source = 'page-link';
+        data.page = $('html').html()  
+        data.url = window.location.href
+      }
+      if(Drupal.settings.contentanalysis.hidden != null) {
+        data.hidden = Drupal.settings.contentanalysis.hidden;
+      }
+      
+      //alert('data.nid ' + data.nid)
+      var analyzers_arr = new Array();
+      if(analyzer_override) {
+        data.analyzers = analyzer_override;
+        analyzers_arr[0] = data.analyzers; 
+      }
+      else if($('#contentanalysis_analyzers_override input').val() != null) {    
+        data.analyzers = $('#contentanalysis_analyzers_override input').val();
+        analyzers_arr[0] = data.analyzers;
+      } 
+      else {
+        var i = 0;
+        $('#contentanalysis_analyzers .form-checkbox:checked').each ( function () {  
+          var expr = new RegExp(/\[[^\]]+\]/);
+          analyzers_arr[i] = expr.exec($(this).attr('name'))[0].replace(']', '').replace('[','');    
+          i++;
+        })
+        data.analyzers = analyzers_arr.join(',');
+      }
+      // call contentanalysis_data for enabed analyzers
+      for(var i in analyzers_arr) {
+        var aid = analyzers_arr[i];
+        var module = Drupal.settings.contentanalysis.analyzer_modules[aid].module;
+        if (eval('typeof ' + module + '_contentanalysis_data == "function"')) {
+          d = eval(module + '_contentanalysis_data')(aid, data);
+          for(var k in d) {
+            eval('data.ao_'+aid+'_'+k+' = "'+d[k]+'";');
+          }
+        }
+      }  
+      $('#contentanalysis-buttons').hide(); 
+      $.ajax({
+        type: 'POST',
+        url: Drupal.settings.contentanalysis.analyze_callback,
+        data: data,
+        dataType: 'json',
+        success: function(data, textStatus) {
+          analyzers_arr = data.inputs['analyzers'].split(",");
+          if(Drupal.settings.contentanalysis.display_dialog == 1) {
+            $('#analysis-modal').append(data.main['output']);
+            $('#analysis-modal .progress').remove();
+            //Drupal.behaviors.contentanalysisui();
+            $$.contentanalysis_contentanalysisui()
+          }
+          // display inline if enabled
+          if(Drupal.settings.contentanalysis.display_inline == 1) {
+            if(data.inputs['action'] == 'refresh') {
+              //if($('.contentanalysis_section_analysis').length > 0)
+              for(i in analyzers_arr) {
+                aid = analyzers_arr[i];
+                $('.contentanalysis-report-'+aid+'-page_title').replaceWith(data.page_title['output']);
+                $('.contentanalysis-report-'+aid+'-body').replaceWith(data.body['output']);
+                $('.contentanalysis-report-'+aid+'-meta_description').replaceWith(data.meta_description['output']);
+                $('.contentanalysis-report-'+aid+'-meta_keywords').replaceWith(data.meta_keywords['output']);
+              }
+            }
+            else {
+              var show_title = true;
+              if($('.form-item-metatags-title-value').length > 0) {
+                $('.form-item-metatags-title-value > .contentanalysis_section_analysis').remove();
+                $('.form-item-metatags-title-value').append(data.page_title['output']);
+                // check if metatag-title contains [node:title] token
+                if ($('#edit-metatags-title-value').val() != null) {
+                  var meta_title = $('#edit-metatags-title-value').val();
+                  if(meta_title.indexOf("[node:title]") == -1) {
+                  //show_title = false;
+                  }
+                }
+              } 
+              if (show_title) {
+                $('.form-item-title > .contentanalysis_section_analysis').remove();
+                $('.form-item-title').append(data.page_title['output']);        
+              }
+        
+              $('#edit-body > .contentanalysis_section_analysis').remove();
+              $('#edit-body').append(data.body['output']);
+              // check newer nodewords format
+              if(($('.form-item-metatags-description-value').length > 0) && data.meta_description != null) {
+                $('.form-item-metatags-description-value > .contentanalysis_section_analysis').remove();
+                $('.form-item-metatags-description-value').append(data.meta_description['output']);
+              }
+              
+              if(($('.form-item-metatags-keywords-value').length > 0) && data.meta_keywords != null) {
+                $('.form-item-metatags-keywords-value > .contentanalysis_section_analysis').remove();
+                $('.form-item-metatags-keywords-value').append(data.meta_keywords['output']);
+              }
+            }
+            for(var i in analyzers_arr) {
+              var aid = analyzers_arr[i];
+              h = '<a href="#" class="contentanalysis-refresh-link-' + aid + '" onclick="contentanalysis.contentanalysis_refresh_analysis(\'' + aid + '\'); return false;">';
+              h += '<img src="' + Drupal.settings.contentanalysis.path_to_module + '/icons/refresh.png" alt="refresh" />';
+              h += '</a>';
+              $('.contentanalysis-report-' + aid + ' label').append(h);
+            } 
+          }      
+          // call any modules post analysis hooks      
+          for(var i in analyzers_arr) {
+            var aid = analyzers_arr[i];        
+            var module = Drupal.settings.contentanalysis.analyzer_modules[aid].module;     
+            if (eval('typeof ' + module + '_contentanalysis_analysis_success == "function"')) {
+              eval(module + '_contentanalysis_analysis_success')(aid, data);
+            }
+          } 
+          if(typeof Drupal.behaviors.collapse == 'function') {
+            Drupal.behaviors.collapse();  
+          }
+          $('.ahah-progress-throbber').remove();
+          $('#contentanalysis-buttons').show();
+        },
+        error: function(xhr, status) {
+          alert(xhr.responseText.toString());
+          $('.ahah-progress-throbber').remove();
+          $('#contentanalysis-buttons').show();
+        }
+      });
+      return false;  
+    }
+  });  
 
-	Drupal.behaviors.contentanalysisui = {
-	  attach: function (context, settings) {
-		$$.init();
-	  }
-	};
-	
-	Sliders = {};
-	
-	Sliders.changeHandle = function(e,ui) {
-	  var id = jQuery(ui.handle).parents('div.slider-widget-container').attr('id');
-	  if (typeof(ui.values) != 'undefined') {
-	    jQuery.each(ui.values, function(i,val) {
-	      jQuery("#"+id+"_value_"+i).val(val);
-	      jQuery("#"+id+"_nr_"+i).text(val);
-	    });
-	  } else {
-	    jQuery("#"+id+"_value_0").val(ui.value);
-	    jQuery("#"+id+"_nr_0").text(ui.value);
-	  }
-	};
+  Drupal.behaviors.contentanalysisui = {
+    attach: function (context, settings) {
+    $$.init();
+    }
+  };
+  
+  Sliders = {};
+  
+  Sliders.changeHandle = function(e,ui) {
+    var id = jQuery(ui.handle).parents('div.slider-widget-container').attr('id');
+    if (typeof(ui.values) != 'undefined') {
+      jQuery.each(ui.values, function(i,val) {
+        jQuery("#"+id+"_value_"+i).val(val);
+        jQuery("#"+id+"_nr_"+i).text(val);
+      });
+    } else {
+      jQuery("#"+id+"_value_0").val(ui.value);
+      jQuery("#"+id+"_nr_0").text(ui.value);
+    }
+  };
 
 })(jQuery, contentanalysis);
diff --git a/contentanalysis.module b/contentanalysis.module
index bdb8a8d..c0ea5ad 100644
--- a/contentanalysis.module
+++ b/contentanalysis.module
@@ -1,6 +1,4 @@
 <?php
-// $Id: contentanalysis.module,v 1.1.2.14 2010/09/26 15:27:18 tomdude48 Exp $
-
 /**
  * @file
  * Provides API to enable analyzer modules to interface with web content and display an analysis 
@@ -88,7 +86,7 @@ function contentanalysis_menu() {
 function contentanalysis_util() {
 
 return 'ok'; 
-	$node = node_load(2);
+  $node = node_load(2);
  $options = array(
     'entity_type' => 'node',
     'entity' => $node,
@@ -327,13 +325,13 @@ function contentanalysis_analysis_form($form_state, $analysis = array(), $node =
     if ($report_style == 'both') {
       $form['clickme'] = array(
         '#type' => 'markup',
-        '#markup' => '<div id="contentanalysis-buttons">' .   $output = ctools_ajax_text_button(t('Analyze content'), 'contentanalysis/ajax/analysis', t('Content Analysis'), 'contentanalysis-button', 'ctools-use-modal') . '</div>'
+        '#markup' => '<div id="contentanalysis-buttons">' . $output = ctools_ajax_text_button(t('Analyze content'), 'contentanalysis/ajax/analysis', t('Content Analysis'), 'contentanalysis-button', 'ctools-use-modal') . '</div>'
       );
     }
     elseif ($report_style == 'dialog') {
       $form['clickme'] = array(
         '#type' => 'markup',
-        '#markup' => '<div id="contentanalysis-buttons">' .   $output = ctools_ajax_text_button(t('Analyze content'), 'contentanalysis/ajax/analysis_only', t('Content Analysis'), 'contentanalysis-button', 'ctools-use-modal') . '</div>'
+        '#markup' => '<div id="contentanalysis-buttons">' . $output = ctools_ajax_text_button(t('Analyze content'), 'contentanalysis/ajax/analysis_only', t('Content Analysis'), 'contentanalysis-button', 'ctools-use-modal') . '</div>'
       ); 
     } 
     elseif ($report_style == 'inline') {
@@ -550,34 +548,34 @@ function contentanalysis_analyze_js() {
 function contentanalysis_save_status($analysis) {
   $aid = isset($analysis['#context']['aid']) ? $analysis['#context']['aid'] : NULL;
   if (!$aid) {
-  	return;
+    return;
   }
   foreach ($analysis AS $anid => $analysisi) {
     if (substr($anid, 0, 1)=='#' || !is_array($analysisi)) { 
       continue; 
     }
-    if((isset($analysisi['#status']) && ($analysisi['#status'] != 'status')) || ($analysisi['#score'])) {
-		  $statusi = array(
-	      'error' => 0,
-			  'warning' => 1,
-			  'complete' => 2,
-		  );
-		  $fields = array(
-		    'status' => $analysisi['#status'],
-		    'statusi' => $statusi[$analysisi['#status']],
-		  );
-		  if($analysisi['#score']) {
-		    $fields['score'] = $analysisi['#score'];
-		  }
-		  $keys = array(
+    if ((isset($analysisi['#status']) && ($analysisi['#status'] != 'status')) || ($analysisi['#score'])) {
+      $statusi = array(
+        'error' => 0,
+        'warning' => 1,
+        'complete' => 2,
+      );
+      $fields = array(
+        'status' => $analysisi['#status'],
+        'statusi' => $statusi[$analysisi['#status']],
+      );
+      if ($analysisi['#score']) {
+        $fields['score'] = $analysisi['#score'];
+      }
+      $keys = array(
         'aid' => $aid,
-        'analyzer' => $anid,		  
-		  );
-		  $query = db_merge('contentanalysis_status')
-		    ->key($keys)
-		    ->fields($fields);
-		    
-		  $updated = $query->execute();
+        'analyzer' => $anid,      
+      );
+      $query = db_merge('contentanalysis_status')
+        ->key($keys)
+        ->fields($fields);
+        
+      $updated = $query->execute();
     }
   }
 }
@@ -673,9 +671,9 @@ function contentanalysis_parse_context_node_edit($context, &$analysis) {
   $context['node']->body[$context['node']->language][0]['value']   = $context['body'];
   // get teaser trim length if available from field
   if ($context['inputs']['body_summary']) {
-  	$context['node']->body[$context['node']->language][0]['summary'] = $context['inputs']['body_summary'];
+    $context['node']->body[$context['node']->language][0]['summary'] = $context['inputs']['body_summary'];
   }
-  else if ($items = field_get_items('node', $context['node'], 'body')) {
+  elseif ($items = field_get_items('node', $context['node'], 'body')) {
     $instance = field_info_instance('node', 'body', $context['node']->type);
     $context['node']->body[$context['node']->language][0]['summary'] = text_summary($context['body'], $context['inputs']['body_input_filter'], $instance['display']['teaser']['settings']['trim_length']);
   }
@@ -745,22 +743,22 @@ function contentanalysis_parse_context_node_edit($context, &$analysis) {
  *   A normalized context array
  */
 function contentanalysis_parse_context_node_load($context, &$analysis) {
-	if (isset($context['node']) && is_object($context['node'])) {
-  	$node = $context['node'];
+  if (isset($context['node']) && is_object($context['node'])) {
+    $node = $context['node'];
   }
   elseif ($context['nid']) {
     $node = node_load($context['nid']);
     if (!$node) {
-    	$msg = t('Nid @nid is invalid.', array('@nid' => $context['nid']));
-    	$analysis['messages'][] = contentanalysis_format_message($msg, 'error');
-    	return $context;
+      $msg = t('Nid @nid is invalid.', array('@nid' => $context['nid']));
+      $analysis['messages'][] = contentanalysis_format_message($msg, 'error');
+      return $context;
     }
     $context['node'] = $node;
   }
   else {
     $msg = t('A valid node/nid was not submitted.');
     $analysis['messages'][] = contentanalysis_format_message($msg, 'error');
-  	return $context;
+    return $context;
   }
   $context['node_type'] = $node->type;
 
@@ -770,7 +768,7 @@ function contentanalysis_parse_context_node_load($context, &$analysis) {
     $context_title = $context['title'];
     $context_page_title = $context['title'];
     if (module_exists('page_title')) {
-      $page_title_pattern = variable_get('page_title_type_'. (isset($node->type) ? $node->type : ''), '');
+      $page_title_pattern = variable_get('page_title_type_' . (isset($node->type) ? $node->type : ''), '');
   
       if (empty($page_title_pattern)) {
         $page_title_pattern = variable_get('page_title_default', '[current-page:page-title] | [site:name]');
@@ -815,7 +813,7 @@ function contentanalysis_parse_context_node_load($context, &$analysis) {
   
   // get metatag context
   if (isset($node->metatags['keywords']['value'])) {
-  	$context['meta_keywords'] = $node->metatags['keywords']['value'];
+    $context['meta_keywords'] = $node->metatags['keywords']['value'];
   }
   if (isset($node->metatags['description']['value'])) {
     $context['meta_description'] = $node->metatags['description']['value'];
@@ -879,7 +877,7 @@ function contentanalysis_parse_context_page($context, &$analysis) {
 }
 
 function contentanalysis_parse_context_metatags($context) {
-	if (module_exists('metatag')) {
+  if (module_exists('metatag')) {
     $options = array(
       'entity_type' => 'node',
       'entity' => $context['node'],
@@ -891,7 +889,7 @@ function contentanalysis_parse_context_metatags($context) {
     );
     $metatags = array();
     if (trim($context['meta_title'])) {
-    	$metatags['title'] = array(
+      $metatags['title'] = array(
         'value' => $context['meta_title'],
       );
     }
@@ -919,14 +917,14 @@ function contentanalysis_parse_context_metatags($context) {
       $context['meta_description'] = $nodemeta['description']['#attached']['drupal_add_html_head'][0][0]['#value'];
     }
     if (!$context['meta_keywords'] && isset($globalmeta['keywords']['#attached']['drupal_add_html_head'][0][0]['#value'])) {
-    	$context['meta_keywords'] = $globalmeta['keywords']['#attached']['drupal_add_html_head'][0][0]['#value'];
+      $context['meta_keywords'] = $globalmeta['keywords']['#attached']['drupal_add_html_head'][0][0]['#value'];
     }
     if (!$context['meta_description'] && isset($globalmeta['description']['#attached']['drupal_add_html_head'][0][0]['#value'])) {
       $context['meta_description'] = $globalmeta['description']['#attached']['drupal_add_html_head'][0][0]['#value'];
     }
   }
-  else if(!isset($context['meta_title'])) {
-  	$context['meta_title'] = $context['title'];
+  elseif (!isset($context['meta_title'])) {
+    $context['meta_title'] = $context['title'];
   }
   return $context;
 }
@@ -937,7 +935,7 @@ function contentanalysis_get_analyzer_settings($analyzer_name) {
   $all_settings = variable_get('contentanalysis_analyzer_settings', array());
   if (isset($all_settings[$analyzer_name]) && is_array($all_settings[$analyzer_name])) {
     $settings = $all_settings[$analyzer_name];
-  }	
+  }  
   if (isset($analyzer_defs[$analyzer_name]['settings'])) {
     $settings += $analyzer_defs[$analyzer_name]['settings'];
   }
@@ -956,7 +954,7 @@ function contentanalysis_get_analyzer_settings($analyzer_name) {
  */
 function contentanalysis_do_analysis($context, $analyzers = NULL, $analyzers_params = array()) {
   $analysis = array();  
-	$analysis_struc = array(
+  $analysis_struc = array(
     '#title' => '',
     '#status' => 'status',
     'content' => array(),
@@ -981,9 +979,9 @@ function contentanalysis_do_analysis($context, $analyzers = NULL, $analyzers_par
   $context = contentanalysis_parse_context($context, $analysis);
 
   // get analyzer settings
-  foreach($analyzers AS $analyzer_name => $analyzer) {
-  	$settings = contentanalysis_get_analyzer_settings($analyzer_name);
-  	$context['analyzers'][$analyzer_name]['settings'] = $settings;
+  foreach ($analyzers AS $analyzer_name => $analyzer) {
+    $settings = contentanalysis_get_analyzer_settings($analyzer_name);
+    $context['analyzers'][$analyzer_name]['settings'] = $settings;
   }
  
   // allow modules to alter context
@@ -1167,7 +1165,7 @@ function contentanalysis_build_analysis_content($analysis) {
     
     uasort($analysisi['content'], "element_sort");
     $i = 0;
-    $con = '<div id="contentanalysis-report-results-' . $aid . '-' . $ti .'" class="contentanalysis-results-section">';
+    $con = '<div id="contentanalysis-report-results-' . $aid . '-' . $ti . '" class="contentanalysis-results-section">';
     foreach ($analysisi['content'] AS $item) {
       if (isset($item['#tab']) && $item['#tab']) {
         if ($i==0) {
@@ -1175,8 +1173,8 @@ function contentanalysis_build_analysis_content($analysis) {
         }
         $ti++;
         $con .= '</div>';
-        $tabs .= '<h3  id="contentanalysis-report-tab-' . $aid . '-' . $ti .'" class="contentanalysis-report-tab">' . $item['#value'] . "</h3>\n";
-        $con .= '<div id="contentanalysis-report-results-' . $aid . '-' . $ti .'" class="contentanalysis-results-section">';
+        $tabs .= '<h3 id="contentanalysis-report-tab-' . $aid . '-' . $ti . '" class="contentanalysis-report-tab">' . $item['#value'] . "</h3>\n";
+        $con .= '<div id="contentanalysis-report-results-' . $aid . '-' . $ti . '" class="contentanalysis-results-section">';
         
       } 
       else {
@@ -1235,8 +1233,8 @@ function theme_contentanalysis_analysis($analysis) {
   }
 
   $out = '<h2 class="analyzers">Analyzers</h2>';
-  $out .= '<div class="analyzers">'. implode($titles) . '</div>';
-  $out .= '<div class="analysis-results">'. implode($bodies) . '</div>';
+  $out .= '<div class="analyzers">' . implode($titles) . '</div>';
+  $out .= '<div class="analysis-results">' . implode($bodies) . '</div>';
   return $out;
 }
 
@@ -1271,7 +1269,7 @@ function theme_contentanalysis_section_analysis($analysis, $section) {
       '#type' => 'item',    
       '#title' => $analysisi['#title'],    
       '#markup' => $analysisi[$section]['output'],
-      '#prefix' => '<div id="contentanalysis-report-' . $aid . '-' . $section .'" class="contentanalysis-report-' . $aid . ' contentanalysis-report-' . $aid . '-' . $section .'">',
+      '#prefix' => '<div id="contentanalysis-report-' . $aid . '-' . $section . '" class="contentanalysis-report-' . $aid . ' contentanalysis-report-' . $aid . '-' . $section . '">',
       '#suffix' => '</div>',
       '#weight' => $i++,
     );   
@@ -1375,7 +1373,7 @@ function theme_contentanalysis_analysis_stats($stats) {
   if (!$stats || !is_array($stats)) {
     return '';
   }
-  $output = '<div class="contentanalysis_stats">'."\n";
+  $output = '<div class="contentanalysis_stats">' . "\n";
   $i=0;
   foreach ($stats AS $sid => $item) {
     $output .= (($i)?', ':'') . $item['#title'] . '=' . number_format($item['#value'], (($item['#decimals'])?$item['#decimals']:0));   
@@ -1496,7 +1494,7 @@ function contentanalysis_format_content($value, $weight = -1, $tab = FALSE) {
  * Add Content Analysis enabled field to content type admin form
  */
 function contentanalysis_form_alter(&$form, &$form_state, $form_id) {
-  if (isset($form['type']['#value']) && $form['type']['#value'] .'_node_form' == $form_id && variable_get('contentanalysis_type_' . $form['#node']->type . '_enable', 1)) {
+  if (isset($form['type']['#value']) && $form['type']['#value'] . '_node_form' == $form_id && variable_get('contentanalysis_type_' . $form['#node']->type . '_enable', 1)) {
     if (!user_access('perform content analysis')) {
       return '';
     }
@@ -1531,7 +1529,7 @@ function contentanalysis_form_alter(&$form, &$form_state, $form_id) {
       '#options' => array(
         'enable' => t('Enable'),
       ),
-      '#default_value' => variable_get('contentanalysis_type_'. $form['#node_type']->type .'_enable', 1) ? array('enable') : array(),
+      '#default_value' => variable_get('contentanalysis_type_' . $form['#node_type']->type . '_enable', 1) ? array('enable') : array(),
     ); 
 /* TODO get analyzer settings working at node_type level
     require_once DRUPAL_ROOT . '/' . drupal_get_path('module', 'contentanalysis') . "/contentanalysis.admin.inc";
@@ -1551,7 +1549,7 @@ function contentanalysis_form_alter(&$form, &$form_state, $form_id) {
  */
 function contentanalysis_node_type_form_submit($form, &$form_state) {
   $enable = ($form_state['values']['contentanalysis']['enable']['enable']) ? 1 : 0;
-  variable_set('contentanalysis_type_'. $form_state['values']['type'] .'_enable', $enable);
+  variable_set('contentanalysis_type_' . $form_state['values']['type'] . '_enable', $enable);
 }
 
 /**
@@ -1583,7 +1581,7 @@ function contentanalysis_block($op = 'list', $delta = 0, $edit = array()) {
   switch ($op) {
     case 'list':
       $blocks['launch']['info'] = t('Content analysis');
-      $blocks['launch']['cache'] = BLOCK_NO_CACHE;
+      $blocks['launch']['cache'] = DRUPAL_NO_CACHE;
       return $blocks;
   
     case 'view':
@@ -1626,8 +1624,8 @@ function contentanalysis_get_aid($context, $save = 0) {
     $where = TRUE;
   } 
   elseif ($context['nid'] > 0) {
-  	$query->condition('nid', $context['nid']);
-  	$where = TRUE;
+    $query->condition('nid', $context['nid']);
+    $where = TRUE;
   } 
   elseif (!is_null($context['path'])) {
     $query->condition('path', $context['path']);
@@ -1642,7 +1640,7 @@ function contentanalysis_get_aid($context, $save = 0) {
 //watchdog('ca 1491', " " . $query);
     $result = $query->execute()->fetchObject();
     $fields = array(
-      'last_analysis' => time(),
+      'last_analysis' => REQUEST_TIME,
       'nid' => isset($context['nid']) && $context['nid'] ? $context['nid'] : 0,
       'path' => isset($context['path']) && $context['path'] ? $context['path'] : '',
       'url' => $context['url'],
@@ -1701,14 +1699,14 @@ function contentanalysis_get_aid_by_url($url) {
  * 
  * @param $node
  */
-function contentanalysis_node_delete($node) {	
-	$aid = contentanalysis_get_aid_by_nid($node->nid);
-	// call analysis delete callbacks to enable analyzers to delete data
-	$analyzers = contentanalysis_analyzer_info();
+function contentanalysis_node_delete($node) {  
+  $aid = contentanalysis_get_aid_by_nid($node->nid);
+  // call analysis delete callbacks to enable analyzers to delete data
+  $analyzers = contentanalysis_analyzer_info();
   foreach ($analyzers AS $name => $analyzer) {
-  	if (isset($analyzer['analysis delete callback'])) {
+    if (isset($analyzer['analysis delete callback'])) {
       $analysis[$aid] = call_user_func($analyzer['analysis delete callback'], $aid);  
-  	}
+    }
   }
   // delete contentanalysis records
   $query = db_delete('contentanalysis_status')
diff --git a/includes/seo_friend.inc b/includes/seo_friend.inc
index a1b5efe..fdda240 100644
--- a/includes/seo_friend.inc
+++ b/includes/seo_friend.inc
@@ -1,5 +1,4 @@
 <?php
-// $Id: seo_friend.inc,v 1.1.2.2 2010/09/26 17:14:13 tomdude48 Exp $
 /**
  * @file * Admin include file. 
 */
@@ -25,25 +24,25 @@ function contentanalysis_seo_friend_report() {
   $rows = array();
   
   $sql = '
-	SELECT DISTINCT analyzer 
-	FROM {contentanalysis_status}
+    SELECT DISTINCT analyzer 
+    FROM {contentanalysis_status}
   ';
   $result = db_query($sql);
-  while($a = db_result($result)) {
-	$analyzers[$a] = $analyzers_meta[$a]['title'];
+  while ($a = db_result($result)) {
+    $analyzers[$a] = $analyzers_meta[$a]['title'];
   }
   $header = array(
       array('data' => 'nid', 'field' => 'n.nid'),
       array('data' => 'status', 'field' => 'n.status'),
       array('data' => 'node title', 'field' => 'r.title'),
   );
-  if(!is_array($analyzers)) {
+  if (!is_array($analyzers)) {
     drupal_set_message(t('No statuses have been reported by any content analyzers. To generate reports, click the "Analyze content" button from a node edit form.'), 'warning');
-	$analyzers = array();
+    $analyzers = array();
   }
   else {  
-    foreach($analyzers AS $aid => $analyzer) {
-	  $header[] = array('data' => $analyzer, 'field' => 'as_' . $aid . '.statusi');
+    foreach ($analyzers AS $aid => $analyzer) {
+      $header[] = array('data' => $analyzer, 'field' => 'as_' . $aid . '.statusi');
       $did = 'as_' . $aid;
       $a_join .= "LEFT JOIN {contentanalysis_status} AS $did ON a.aid = $did.aid AND $did.analyzer = \"$aid\"\n";
       $a_select .= ", $did.statusi AS {$aid}_statusi, $did.score AS {$aid}_score";
@@ -56,22 +55,22 @@ function contentanalysis_seo_friend_report() {
   $page_title_join = '';
   if (module_exists('page_title')) {
     $page_title_field = ', p.page_title ';
-    $page_title_join = ' LEFT JOIN {page_title} AS p ON n.nid=p.'.seo_friend_get_page_title_id_column();
+    $page_title_join = ' LEFT JOIN {page_title} AS p ON n.nid=p.' . seo_friend_get_page_title_id_column();
   }
   $sql = '
       SELECT n.nid, n.status, n.type, r.title, n.sticky ' . $page_title_field . $a_select . ' 
       FROM {node} AS n
-	  LEFT JOIN {contentanalysis} AS a ON n.nid = a.nid
-	  ' . $a_join . '
+      LEFT JOIN {contentanalysis} AS a ON n.nid = a.nid
+      ' . $a_join . '
       INNER JOIN {node_revisions} AS r ON n.vid=r.vid ' . $page_title_join;
   $sql .= tablesort_sql($header);
   if ($use_pager) {
     $count_sql = '
       SELECT COUNT(n.nid) AS row_count
       FROM {node} AS n
-	  LEFT JOIN {contentanalysis} AS a ON n.nid = a.nid
-	  ' . $a_join . '
-      INNER JOIN {node_revisions} AS r ON n.vid=r.vid '.$page_title_join.
+      LEFT JOIN {contentanalysis} AS a ON n.nid = a.nid
+      ' . $a_join . '
+      INNER JOIN {node_revisions} AS r ON n.vid=r.vid ' . $page_title_join .
       tablesort_sql($header);
     $pager_num = seo_friend_get_number_variable(SEO_PAGER_NUM, 100);
     $result = pager_query($sql, $pager_num, 0, $count_sql);
@@ -80,40 +79,40 @@ function contentanalysis_seo_friend_report() {
   while ($r = db_fetch_object($result)) {
     $data = array();
 
-	$data[] = array('data' => $r->nid, 'class' => 'row-status');
-	$data[] = seo_friend_get_node_status($r);
-	$data[] = l($r->title, 'node/'.$r->nid);
-	foreach($analyzers AS $aid => $analyzer) {
+    $data[] = array('data' => $r->nid, 'class' => 'row-status');
+    $data[] = seo_friend_get_node_status($r);
+    $data[] = l($r->title, 'node/' . $r->nid);
+    foreach ($analyzers AS $aid => $analyzer) {
       $value = NULL;
       $class = NULL;
       $scoreh = $aid . '_score';
-	  $statush = $aid . '_statusi';
-	  if($r->$scoreh) {
-	    $dec = ($analyzers_meta[$aid]['score decimals']) ? $analyzers_meta[$aid]['score decimals'] : 1;
+      $statush = $aid . '_statusi';
+      if ($r->$scoreh) {
+        $dec = ($analyzers_meta[$aid]['score decimals']) ? $analyzers_meta[$aid]['score decimals'] : 1;
         $value = $analyzers_meta[$aid]['score prefix'] . number_format($r->$scoreh, $dec) . $analyzers_meta[$aid]['score suffix'];
       }
-      if(is_null($r->$statush)) {
-	    $value = ($value) ? $value : t('NA');
-		$class = 'status';	
-	  }
-	  else if($r->$statush == 2) {
+      if (is_null($r->$statush)) {
+        $value = ($value) ? $value : t('NA');
+        $class = 'status';    
+      }
+      elseif ($r->$statush == 2) {
         $value = ($value) ? $value : t('OK');
-        $class = 'ok';		
+        $class = 'ok';        
       }
-      else if($r->$statush == 1) {
+      elseif ($r->$statush == 1) {
         $value = ($value) ? $value : t('warn');
-		$class = 'warning';
+        $class = 'warning';
       }
-      else if($r->$statush == 0) {
+      elseif ($r->$statush == 0) {
         $value = ($value) ? $value : t('error');
-		$class = 'error';
-      }	
-	  $data[] = array(
-	    'data' => $value,
-		'class' => $class,
-	  );
-	}	
-	$data[] = l('Edit', 'node/'.$r->nid.'/edit');
+        $class = 'error';
+      }    
+      $data[] = array(
+        'data' => $value,
+        'class' => $class,
+      );
+    }    
+    $data[] = l(t('Edit'), 'node/' . $r->nid . '/edit');
     $rows[] = array('data' =>
       $data,
       'class' => $duplicates ? 'error' : 'ok'
