Common.js - remove duplicate function
authorColeman Watts <coleman@civicrm.org>
Tue, 11 Feb 2020 20:43:54 +0000 (15:43 -0500)
committerColeman Watts <coleman@civicrm.org>
Tue, 11 Feb 2020 20:43:54 +0000 (15:43 -0500)
This function did the same thing as the one in lo-dash

js/Common.js
js/jquery/jquery.dashboard.js

index 47c6e48b18e095dd3950eaa92d0d0e7e034f8ca0..25e228b594c3d41cda2825aa5d98fef43099e178 100644 (file)
@@ -1598,25 +1598,6 @@ if (!CRM.vars) CRM.vars = {};
     return (yiq >= 128) ? 'black' : 'white';
   };
 
-  // based on https://github.com/janl/mustache.js/blob/master/mustache.js
-  // If you feel the need to use this function, consider whether assembling HTML
-  // via DOM might be a cleaner approach rather than using string concatenation.
-  CRM.utils.escapeHtml = function(string) {
-    var entityMap = {
-      '&': '&amp;',
-      '<': '&lt;',
-      '>': '&gt;',
-      '"': '&quot;',
-      "'": '&#39;',
-      '/': '&#x2F;',
-      '`': '&#x60;',
-      '=': '&#x3D;'
-    };
-    return String(string).replace(/[&<>"'`=\/]/g, function fromEntityMap (s) {
-      return entityMap[s];
-    });
-  }
-
   // CVE-2015-9251 - Prevent auto-execution of scripts when no explicit dataType was provided
   $.ajaxPrefilter(function(s) {
     if (s.crossDomain) {
index b87db357d16ade482d2938ce58436919a016d29f..b757e27f6c472c4f3c4afd33501cf34093658e5a 100644 (file)
@@ -1,7 +1,7 @@
 // https://civicrm.org/licensing
 /* global CRM, ts */
 /*jshint loopfunc: true */
-(function($) {
+(function($, _) {
   'use strict';
   // Constructor for dashboard object.
   $.fn.dashboard = function(options) {
         });
         CRM.alert(
           ts('You can re-add it by clicking the "Configure Your Dashboard" button.'),
-          ts('"%1" Removed', {1: CRM.utils.escapeHtml(widget.title)}),
+          ts('"%1" Removed', {1: _.escape(widget.title)}),
           'success'
         );
       };
       function widgetHTML() {
         var html = '';
         html += '<div class="widget-wrapper">';
-        html += '  <div class="widget-controls"><h3 class="widget-header">' + CRM.utils.escapeHtml(widget.title) + '</h3></div>';
+        html += '  <div class="widget-controls"><h3 class="widget-header">' + _.escape(widget.title) + '</h3></div>';
         html += '  <div class="widget-content"></div>';
         html += '</div>';
         return html;
       // id, url, fullscreenUrl, title, name, cacheMinutes
     }
   };
-})(jQuery);
+})(jQuery, CRM._);