#556018 by Damien Tournoud: Rename drupal_to_js() to drupal_json_encode() and drupal_json() to drupal_output_json().

From: Damien Tournoud <damien@tournoud.net>


---

 includes/ajax.inc                             |   10 +++++-----
 includes/batch.inc                            |    2 +-
 includes/common.inc                           |    8 ++++----
 includes/locale.inc                           |    2 +-
 modules/field/field.test                      |    2 +-
 modules/poll/poll.test                        |    2 +-
 modules/profile/profile.admin.inc             |    2 +-
 modules/profile/profile.pages.inc             |    2 +-
 modules/simpletest/tests/database_test.module |   10 +++++-----
 modules/system/system.admin.inc               |    2 +-
 modules/system/system.module                  |    4 ++--
 modules/taxonomy/taxonomy.pages.inc           |    4 ++--
 modules/upload/upload.module                  |    2 +-
 modules/user/user.pages.inc                   |    2 +-
 14 files changed, 27 insertions(+), 27 deletions(-)


diff --git includes/ajax.inc includes/ajax.inc
index 7eab334..47bd324 100644
--- includes/ajax.inc
+++ includes/ajax.inc
@@ -105,7 +105,7 @@
  *   A list of macro commands generated by the use of ajax_command_*()
  *   functions.
  * @param $header
- *   If set to FALSE the 'text/javascript' header used by drupal_json() will
+ *   If set to FALSE the 'text/javascript' header used by drupal_output_json() will
  *   not be used, which is necessary when using an IFRAME. If set to
  *   'multipart' the output will be wrapped in a textarea, which can also be
  *   used as an alternative method when uploading files.
@@ -123,17 +123,17 @@ function ajax_render($commands = array(), $header = TRUE) {
 
   // Use === here so that bool TRUE doesn't match 'multipart'.
   if ($header === 'multipart') {
-    // We do not use drupal_json() here because the header is not true. We are
+    // We do not use drupal_output_json() here because the header is not true. We are
     // not really returning JSON, strictly-speaking, but rather JSON content
     // wrapped in a textarea as per the "file uploads" example here:
     // http://malsup.com/jquery/form/#code-samples
-    print '<textarea>' . drupal_to_js($commands) . '</textarea>';
+    print '<textarea>' . drupal_json_encode($commands) . '</textarea>';
   }
   else if ($header) {
-    drupal_json($commands);
+    drupal_output_json($commands);
   }
   else {
-    print drupal_to_js($commands);
+    print drupal_json_encode($commands);
   }
   exit;
 }
diff --git includes/batch.inc includes/batch.inc
index 45ea5b7..25f3441 100644
--- includes/batch.inc
+++ includes/batch.inc
@@ -140,7 +140,7 @@ function _batch_do() {
   // Perform actual processing.
   list($percentage, $message) = _batch_process();
 
-  drupal_json(array('status' => TRUE, 'percentage' => $percentage, 'message' => $message));
+  drupal_output_json(array('status' => TRUE, 'percentage' => $percentage, 'message' => $message));
 }
 
 /**
diff --git includes/common.inc includes/common.inc
index cac3b8a..8b353ca 100644
--- includes/common.inc
+++ includes/common.inc
@@ -3088,7 +3088,7 @@ function drupal_get_js($scope = 'header', $javascript = NULL) {
   foreach ($items as $item) {
     switch ($item['type']) {
       case 'setting':
-        $output .= '<script type="text/javascript">' . $embed_prefix . 'jQuery.extend(Drupal.settings, ' . drupal_to_js(call_user_func_array('array_merge_recursive', $item['data'])) . ");" . $embed_suffix . "</script>\n";
+        $output .= '<script type="text/javascript">' . $embed_prefix . 'jQuery.extend(Drupal.settings, ' . drupal_json_encode(call_user_func_array('array_merge_recursive', $item['data'])) . ");" . $embed_suffix . "</script>\n";
         break;
 
       case 'inline':
@@ -3420,7 +3420,7 @@ function drupal_clear_js_cache() {
  *
  * We use HTML-safe strings, i.e. with <, > and & escaped.
  */
-function drupal_to_js($var) {
+function drupal_json_encode($var) {
   // json_encode() does not escape <, > and &, so we do it with str_replace()
   return str_replace(array("<", ">", "&"), array('\x3c', '\x3e', '\x26'), json_encode($var));
 }
@@ -3434,12 +3434,12 @@ function drupal_to_js($var) {
  * @param $var
  *   (optional) If set, the variable will be converted to JSON and output.
  */
-function drupal_json($var = NULL) {
+function drupal_output_json($var = NULL) {
   // We are returning JavaScript, so tell the browser.
   drupal_set_header('Content-Type', 'text/javascript; charset=utf-8');
 
   if (isset($var)) {
-    echo drupal_to_js($var);
+    echo drupal_json_encode($var);
   }
 }
 
diff --git includes/locale.inc includes/locale.inc
index ea768fc..79a0f39 100644
--- includes/locale.inc
+++ includes/locale.inc
@@ -2429,7 +2429,7 @@ function _locale_rebuild_js($langcode = NULL) {
       $data .= "'pluralFormula': function (\$n) { return Number({$language->formula}); }, ";
     }
 
-    $data .= "'strings': " . drupal_to_js($translations) . " };";
+    $data .= "'strings': " . drupal_json_encode($translations) . " };";
     $data_hash = md5($data);
   }
 
diff --git modules/field/field.test modules/field/field.test
index de1580b..6170537 100644
--- modules/field/field.test
+++ modules/field/field.test
@@ -1335,7 +1335,7 @@ class FieldFormTestCase extends DrupalWebTestCase {
     $this->drupalPost(NULL, $edit, $submit);
     unset($this->additionalCurlOptions[CURLOPT_URL]);
 
-    // The response is drupal_json, so we need to undo some escaping.
+    // The response is drupal_output_json, so we need to undo some escaping.
     $commands = json_decode(str_replace(array('\x3c', '\x3e', '\x26'), array("<", ">", "&"), $this->drupalGetContent()));
 
     // The JSON response will be two AJAX commands. The first is a settings
diff --git modules/poll/poll.test modules/poll/poll.test
index 355f593..c4741bf 100644
--- modules/poll/poll.test
+++ modules/poll/poll.test
@@ -344,7 +344,7 @@ class PollJSAddChoice extends DrupalWebTestCase {
     $this->drupalPost(NULL, $edit, t('More choices'));
     unset($this->additionalCurlOptions[CURLOPT_URL]);
 
-    // The response is drupal_json, so we need to undo some escaping.
+    // The response is drupal_output_json, so we need to undo some escaping.
     $commands = json_decode(str_replace(array('\x3c', '\x3e', '\x26'), array("<", ">", "&"), $this->drupalGetContent()));
 
     // The JSON response will be two AJAX commands. The first is a settings
diff --git modules/profile/profile.admin.inc modules/profile/profile.admin.inc
index 9fcd4f9..f8ccb8c 100644
--- modules/profile/profile.admin.inc
+++ modules/profile/profile.admin.inc
@@ -424,5 +424,5 @@ function profile_admin_settings_autocomplete($string) {
   foreach ($result as $data) {
     $matches[$data->category] = check_plain($data->category);
   }
-  drupal_json($matches);
+  drupal_output_json($matches);
 }
diff --git modules/profile/profile.pages.inc modules/profile/profile.pages.inc
index 421cfc1..94e3703 100644
--- modules/profile/profile.pages.inc
+++ modules/profile/profile.pages.inc
@@ -134,5 +134,5 @@ function profile_autocomplete($field, $string) {
     }
   }
 
-  drupal_json($matches);
+  drupal_output_json($matches);
 }
diff --git modules/simpletest/tests/database_test.module modules/simpletest/tests/database_test.module
index f92fa88..ede5fe1 100644
--- modules/simpletest/tests/database_test.module
+++ modules/simpletest/tests/database_test.module
@@ -77,7 +77,7 @@ function database_test_menu() {
  */
 function database_test_db_query_temporary() {
   $table_name = db_query_temporary('SELECT status FROM {system}', array());
-  drupal_json(array(
+  drupal_output_json(array(
     'table_name' => $table_name,
     'row_count' => db_select($table_name)->countQuery()->execute()->fetchField(),
   ));
@@ -102,7 +102,7 @@ function database_test_even_pager_query($limit) {
 
   $names = $query->execute()->fetchCol();
 
-  drupal_json(array(
+  drupal_output_json(array(
     'names' => $names,
   ));
   exit;
@@ -126,7 +126,7 @@ function database_test_odd_pager_query($limit) {
 
   $names = $query->execute()->fetchCol();
 
-  drupal_json(array(
+  drupal_output_json(array(
     'names' => $names,
   ));
   exit;
@@ -155,7 +155,7 @@ function database_test_tablesort() {
   // We need all the results at once to check the sort.
   $tasks = $query->execute()->fetchAll();
 
-  drupal_json(array(
+  drupal_output_json(array(
     'tasks' => $tasks,
   ));
   exit;
@@ -184,7 +184,7 @@ function database_test_tablesort_first() {
   // We need all the results at once to check the sort.
   $tasks = $query->execute()->fetchAll();
 
-  drupal_json(array(
+  drupal_output_json(array(
     'tasks' => $tasks,
   ));
   exit;
diff --git modules/system/system.admin.inc modules/system/system.admin.inc
index 457e49d..2b49a11 100644
--- modules/system/system.admin.inc
+++ modules/system/system.admin.inc
@@ -1777,7 +1777,7 @@ function system_regional_settings_submit($form, &$form_state) {
  */
 function system_date_time_lookup() {
   $result = format_date(REQUEST_TIME, 'custom', $_GET['format']);
-  drupal_json($result);
+  drupal_output_json($result);
 }
 
 /**
diff --git modules/system/system.module modules/system/system.module
index 266cbe5..e3600c9 100644
--- modules/system/system.module
+++ modules/system/system.module
@@ -783,7 +783,7 @@ function system_menu() {
   );
   $items['admin/settings/clean-urls/check'] = array(
     'title' => 'Clean URL check',
-    'page callback' => 'drupal_json',
+    'page callback' => 'drupal_output_json',
     'page arguments' => array(array('status' => TRUE)),
     'access callback' => TRUE,
     'type' => MENU_CALLBACK,
@@ -2869,7 +2869,7 @@ function system_timezone($abbreviation = '', $offset = -1, $is_daylight_saving_t
   // interpreted as the empty string.
   $abbreviation = $abbreviation ? $abbreviation : '';
   $timezone = timezone_name_from_abbr($abbreviation, intval($offset), $is_daylight_saving_time);
-  drupal_json($timezone);
+  drupal_output_json($timezone);
 }
 
 /**
diff --git modules/taxonomy/taxonomy.pages.inc modules/taxonomy/taxonomy.pages.inc
index 621cf73..d47ae33 100644
--- modules/taxonomy/taxonomy.pages.inc
+++ modules/taxonomy/taxonomy.pages.inc
@@ -134,7 +134,7 @@ function taxonomy_autocomplete_legacy($vid = 0, $tags_typed = '') {
     }
   }
 
-  drupal_json(array_merge($term_matches, $synonym_matches));
+  drupal_output_json(array_merge($term_matches, $synonym_matches));
 }
 
 /**
@@ -190,5 +190,5 @@ function taxonomy_autocomplete($field_name, $bundle, $tags_typed = '') {
     }
   }
 
-  drupal_json($term_matches);
+  drupal_output_json($term_matches);
 }
diff --git modules/upload/upload.module modules/upload/upload.module
index dc91824..90d538e 100644
--- modules/upload/upload.module
+++ modules/upload/upload.module
@@ -641,7 +641,7 @@ function upload_js() {
   if (!($cached_form = form_get_cache($_POST['form_build_id'], $cached_form_state)) || !isset($cached_form['#node']) || !isset($cached_form['attachments'])) {
     form_set_error('form_token', t('Validation error, please try again. If this error persists, please contact the site administrator.'));
     $output = theme('status_messages');
-    print drupal_to_js(array('status' => TRUE, 'data' => $output));
+    print drupal_json_encode(array('status' => TRUE, 'data' => $output));
     exit();
   }
 
diff --git modules/user/user.pages.inc modules/user/user.pages.inc
index 7c33cd0..dd4301b 100644
--- modules/user/user.pages.inc
+++ modules/user/user.pages.inc
@@ -18,7 +18,7 @@ function user_autocomplete($string = '') {
     }
   }
 
-  drupal_json($matches);
+  drupal_output_json($matches);
 }
 
 /**
