You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by bf...@apache.org on 2013/02/13 23:59:38 UTC

[19/35] git commit: refs/heads/master - UI plugins: Dynamically load CSS

UI plugins: Dynamically load CSS

Adds a CSS file <pluginName>.css to the plugin structure, which allows
developer to specify custom CSS to be loaded after their JS code.


Project: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/commit/806105f9
Tree: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/tree/806105f9
Diff: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/diff/806105f9

Branch: refs/heads/master
Commit: 806105f9a1621a3c626ec4082d5d4fff4d96c629
Parents: bf2691c
Author: Brian Federle <br...@citrix.com>
Authored: Tue Jan 29 13:56:36 2013 -0800
Committer: Brian Federle <br...@citrix.com>
Committed: Tue Jan 29 13:56:36 2013 -0800

----------------------------------------------------------------------
 ui/plugins/testPlugin/testPlugin.css |    2 ++
 ui/scripts/plugins.js                |   16 ++++++++++++++++
 2 files changed, 18 insertions(+), 0 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/806105f9/ui/plugins/testPlugin/testPlugin.css
----------------------------------------------------------------------
diff --git a/ui/plugins/testPlugin/testPlugin.css b/ui/plugins/testPlugin/testPlugin.css
new file mode 100644
index 0000000..19e1241
--- /dev/null
+++ b/ui/plugins/testPlugin/testPlugin.css
@@ -0,0 +1,2 @@
+/* Put your CSS here */
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/806105f9/ui/scripts/plugins.js
----------------------------------------------------------------------
diff --git a/ui/scripts/plugins.js b/ui/scripts/plugins.js
index 5cc3185..f513ed6 100644
--- a/ui/scripts/plugins.js
+++ b/ui/scripts/plugins.js
@@ -1,4 +1,16 @@
 (function($, cloudStack, require) {
+  var loadCSS = function(path) {
+    var $link = $('<link>');
+
+    $link.attr({
+      rel: 'stylesheet',
+      type: 'text/css',
+      href: path
+    });
+
+    $('head').append($link);
+  };
+
   var pluginAPI = {
     addSection: function(section) {
       cloudStack.sections[section.id] = section;
@@ -18,14 +30,18 @@
     var basePath = 'plugins/' + pluginID + '/';
     var pluginJS = basePath + pluginID + '.js';
     var configJS = basePath + 'config.js';
+    var pluginCSS = basePath + pluginID + '.css';
 
     require([pluginJS], function() {
       require([configJS]);
+      loadCSS(pluginCSS);
 
       // Execute plugin
       cloudStack.plugins[pluginID]({
         ui: pluginAPI
       });
     });
+
+    // Load CSS
   });
 }(jQuery, cloudStack, require));