From 0b1991948184b8d6b4e290f8514406f7fd620c21 Mon Sep 17 00:00:00 2001 From: Tim Otten Date: Thu, 18 May 2017 21:25:58 -0700 Subject: [PATCH] CRM-20600 - Angular deps - Move from *.js to *.php If third-parties are allowed to alter the HTML content, then they may introduce new dependencies. This means that they'll need to delcare those dependencies. This commit actually moves the declarations for any in-house modules to PHP. --- ang/crmAttachment.ang.php | 1 + ang/crmAttachment.js | 2 +- ang/crmAutosave.ang.php | 1 + ang/crmAutosave.js | 2 +- ang/crmCaseType.ang.php | 1 + ang/crmCaseType.js | 2 +- ang/crmCxn.ang.php | 1 + ang/crmCxn.js | 4 +--- ang/crmD3.ang.php | 1 + ang/crmD3.js | 3 +-- ang/crmExample.ang.php | 1 + ang/crmExample.js | 4 +--- ang/crmMailing.ang.php | 1 + ang/crmMailing.js | 4 +--- ang/crmMailingAB.ang.php | 1 + ang/crmMailingAB.js | 2 +- ang/crmStatusPage.ang.php | 1 + ang/crmStatusPage.js | 5 +---- ang/crmUi.ang.php | 1 + ang/crmUi.js | 2 +- ang/crmUtil.ang.php | 1 + ang/crmUtil.js | 2 +- 22 files changed, 22 insertions(+), 21 deletions(-) diff --git a/ang/crmAttachment.ang.php b/ang/crmAttachment.ang.php index d598c8a1c2..881fcf85bc 100644 --- a/ang/crmAttachment.ang.php +++ b/ang/crmAttachment.ang.php @@ -11,4 +11,5 @@ return array( 'settings' => array( 'token' => \CRM_Core_Page_AJAX_Attachment::createToken(), ), + 'requires' => array('angularFileUpload'), ); diff --git a/ang/crmAttachment.js b/ang/crmAttachment.js index 35dd1c582f..b89fe4ca22 100644 --- a/ang/crmAttachment.js +++ b/ang/crmAttachment.js @@ -1,7 +1,7 @@ /// crmFile: Manage file attachments (function (angular, $, _) { - angular.module('crmAttachment', ['angularFileUpload']); + angular.module('crmAttachment', CRM.angRequires('crmAttachment')); // crmAttachment manages the list of files which are attached to a given entity angular.module('crmAttachment').factory('CrmAttachments', function (crmApi, crmStatus, FileUploader, $q) { diff --git a/ang/crmAutosave.ang.php b/ang/crmAutosave.ang.php index 95794db5c7..4754eafd11 100644 --- a/ang/crmAutosave.ang.php +++ b/ang/crmAutosave.ang.php @@ -6,4 +6,5 @@ return array( 'ext' => 'civicrm', 'js' => array('ang/crmAutosave.js'), + 'requires' => array('crmUtil'), ); diff --git a/ang/crmAutosave.js b/ang/crmAutosave.js index a697880b8f..359ccfebac 100644 --- a/ang/crmAutosave.js +++ b/ang/crmAutosave.js @@ -1,7 +1,7 @@ /// crmAutosave (function(angular, $, _) { - angular.module('crmAutosave', ['crmUtil']); + angular.module('crmAutosave', CRM.angRequires('crmAutosave')); // usage: // var autosave = new CrmAutosaveCtrl({ diff --git a/ang/crmCaseType.ang.php b/ang/crmCaseType.ang.php index 62101830b3..bf309a4dce 100644 --- a/ang/crmCaseType.ang.php +++ b/ang/crmCaseType.ang.php @@ -16,4 +16,5 @@ return array( 'js' => array('ang/crmCaseType.js'), 'css' => array('ang/crmCaseType.css'), 'partials' => array('ang/crmCaseType'), + 'requires' => array('ngRoute', 'ui.utils', 'crmUi', 'unsavedChanges', 'crmUtil'), ); diff --git a/ang/crmCaseType.js b/ang/crmCaseType.js index f4e732bd6d..66ca2b1594 100644 --- a/ang/crmCaseType.js +++ b/ang/crmCaseType.js @@ -1,6 +1,6 @@ (function(angular, $, _) { - var crmCaseType = angular.module('crmCaseType', ['ngRoute', 'ui.utils', 'crmUi', 'unsavedChanges', 'crmUtil']); + var crmCaseType = angular.module('crmCaseType', CRM.angRequires('crmCaseType')); // Note: This template will be passed to cloneDeep(), so don't put any funny stuff in here! var newCaseTypeTemplate = { diff --git a/ang/crmCxn.ang.php b/ang/crmCxn.ang.php index eb67e0f168..e1cd88c39d 100644 --- a/ang/crmCxn.ang.php +++ b/ang/crmCxn.ang.php @@ -8,4 +8,5 @@ return array( 'js' => array('ang/crmCxn.js', 'ang/crmCxn/*.js'), 'css' => array('ang/crmCxn.css'), 'partials' => array('ang/crmCxn'), + 'requires' => array('crmUtil', 'ngRoute', 'ngSanitize', 'ui.utils', 'crmUi', 'dialogService'), ); diff --git a/ang/crmCxn.js b/ang/crmCxn.js index c2fa6ec287..244d038ffc 100644 --- a/ang/crmCxn.js +++ b/ang/crmCxn.js @@ -1,8 +1,6 @@ (function (angular, $, _) { - angular.module('crmCxn', [ - 'crmUtil', 'ngRoute', 'ngSanitize', 'ui.utils', 'crmUi', 'dialogService' - ]); + angular.module('crmCxn', CRM.angRequires('crmCxn')); angular.module('crmCxn').config([ '$routeProvider', diff --git a/ang/crmD3.ang.php b/ang/crmD3.ang.php index ad2047ac6c..eee0ebd661 100644 --- a/ang/crmD3.ang.php +++ b/ang/crmD3.ang.php @@ -12,4 +12,5 @@ return array( 'ang/crmD3.js', 'bower_components/d3/d3.min.js', ), + 'requires' => array(), ); diff --git a/ang/crmD3.js b/ang/crmD3.js index eca29a3cfb..d06eeac9b4 100644 --- a/ang/crmD3.js +++ b/ang/crmD3.js @@ -1,4 +1,3 @@ (function (angular, $, _) { - // thin stub for declaring dependencies - angular.module('crmD3', []); + angular.module('crmD3', CRM.angRequires('crmD3')); })(angular, CRM.$, CRM._); diff --git a/ang/crmExample.ang.php b/ang/crmExample.ang.php index 41081ab57c..af61102303 100644 --- a/ang/crmExample.ang.php +++ b/ang/crmExample.ang.php @@ -7,4 +7,5 @@ return array( 'ext' => 'civicrm', 'js' => array('ang/crmExample.js'), 'partials' => array('ang/crmExample'), + 'requires' => array('crmUtil', 'ngRoute', 'ui.utils', 'crmUi'), ); diff --git a/ang/crmExample.js b/ang/crmExample.js index d32d81d29a..138ce8f12a 100644 --- a/ang/crmExample.js +++ b/ang/crmExample.js @@ -1,8 +1,6 @@ (function(angular, $, _) { - angular.module('crmExample', [ - 'crmUtil', 'ngRoute', 'ui.utils', 'crmUi' - ]); + angular.module('crmExample', CRM.angRequires('crmExample')); angular.module('crmExample').config([ '$routeProvider', diff --git a/ang/crmMailing.ang.php b/ang/crmMailing.ang.php index 3ea6a7b16f..81eeba3385 100644 --- a/ang/crmMailing.ang.php +++ b/ang/crmMailing.ang.php @@ -14,4 +14,5 @@ return array( ), 'css' => array('ang/crmMailing.css'), 'partials' => array('ang/crmMailing'), + 'requires' => array('crmUtil', 'crmAttachment', 'crmAutosave', 'ngRoute', 'ui.utils', 'crmUi', 'dialogService'), ); diff --git a/ang/crmMailing.js b/ang/crmMailing.js index 7945ae6429..95148bf27b 100644 --- a/ang/crmMailing.js +++ b/ang/crmMailing.js @@ -1,8 +1,6 @@ (function (angular, $, _) { - angular.module('crmMailing', [ - 'crmUtil', 'crmAttachment', 'crmAutosave', 'ngRoute', 'ui.utils', 'crmUi', 'dialogService' - ]); + angular.module('crmMailing', CRM.angRequires('crmMailing')); angular.module('crmMailing').config([ '$routeProvider', diff --git a/ang/crmMailingAB.ang.php b/ang/crmMailingAB.ang.php index b89adee213..acaeba2fd6 100644 --- a/ang/crmMailingAB.ang.php +++ b/ang/crmMailingAB.ang.php @@ -15,4 +15,5 @@ return array( ), 'css' => array('ang/crmMailingAB.css'), 'partials' => array('ang/crmMailingAB'), + 'requires' => array('ngRoute', 'ui.utils', 'crmUi', 'crmAttachment', 'crmMailing', 'crmD3'), ); diff --git a/ang/crmMailingAB.js b/ang/crmMailingAB.js index 684c19cc20..49261ff993 100644 --- a/ang/crmMailingAB.js +++ b/ang/crmMailingAB.js @@ -1,6 +1,6 @@ (function(angular, $, _) { - angular.module('crmMailingAB', ['ngRoute', 'ui.utils', 'crmUi', 'crmAttachment', 'crmMailing', 'crmD3']); + angular.module('crmMailingAB', CRM.angRequires('crmMailingAB')); angular.module('crmMailingAB').config([ '$routeProvider', function($routeProvider) { diff --git a/ang/crmStatusPage.ang.php b/ang/crmStatusPage.ang.php index 6175657943..776c83225b 100644 --- a/ang/crmStatusPage.ang.php +++ b/ang/crmStatusPage.ang.php @@ -11,4 +11,5 @@ return array( 'css' => array('ang/crmStatusPage.css'), 'partials' => array('ang/crmStatusPage'), 'settings' => array(), + 'requires' => array('crmUi', 'crmUtil', 'ngRoute'), ); diff --git a/ang/crmStatusPage.js b/ang/crmStatusPage.js index a1f40162e5..b0db81a350 100644 --- a/ang/crmStatusPage.js +++ b/ang/crmStatusPage.js @@ -1,8 +1,5 @@ (function(angular, $, _) { - // Declare a list of dependencies. - angular.module('statuspage', [ - 'crmUi', 'crmUtil', 'ngRoute' - ]); + angular.module('statuspage', CRM.angRequires('statuspage')); // router angular.module('statuspage').config( function($routeProvider) { diff --git a/ang/crmUi.ang.php b/ang/crmUi.ang.php index 8ab314e19a..77ee518eb5 100644 --- a/ang/crmUi.ang.php +++ b/ang/crmUi.ang.php @@ -7,4 +7,5 @@ return array( 'ext' => 'civicrm', 'js' => array('ang/crmUi.js'), 'partials' => array('ang/crmUi'), + 'requires' => array(), ); diff --git a/ang/crmUi.js b/ang/crmUi.js index f53c145ad9..4ea687c329 100644 --- a/ang/crmUi.js +++ b/ang/crmUi.js @@ -5,7 +5,7 @@ pageTitle = 'CiviCRM', documentTitle = 'CiviCRM'; - angular.module('crmUi', []) + angular.module('crmUi', CRM.angRequires('crmUi')) // example
...content...
// WISHLIST: crmCollapsed should support two-way/continuous binding diff --git a/ang/crmUtil.ang.php b/ang/crmUtil.ang.php index 95f618d839..bea2c48c0c 100644 --- a/ang/crmUtil.ang.php +++ b/ang/crmUtil.ang.php @@ -6,4 +6,5 @@ return array( 'ext' => 'civicrm', 'js' => array('ang/crmUtil.js'), + 'requires' => array(), ); diff --git a/ang/crmUtil.js b/ang/crmUtil.js index c48b2cbc54..a8b0370ad4 100644 --- a/ang/crmUtil.js +++ b/ang/crmUtil.js @@ -1,6 +1,6 @@ /// crmUi: Sundry UI helpers (function (angular, $, _) { - angular.module('crmUtil', []); + angular.module('crmUtil', CRM.angRequires('crmUtil')); // Angular implementation of CRM.api3 // @link http://wiki.civicrm.org/confluence/display/CRMDOC/AJAX+Interface#AJAXInterface-CRM.api3 -- 2.25.1