can3p (can3p) wrote in changelog,
can3p
can3p
changelog

[livejournal] r21917: LJSUP-12136: Implement mixins for jquery...

Committer: dpetrov
LJSUP-12136: Implement mixins for jquery ui widgets
U   trunk/htdocs/js/basic.js
Modified: trunk/htdocs/js/basic.js
===================================================================
--- trunk/htdocs/js/basic.js	2012-05-11 10:58:37 UTC (rev 21916)
+++ trunk/htdocs/js/basic.js	2012-05-11 11:51:34 UTC (rev 21917)
@@ -109,7 +109,7 @@
 };
 
 /**
- * @namespace LiveJournal utility objects
+ * @namespace LJ LiveJournal utility objects
  */
 LJ = window.LJ || {};
 
@@ -329,6 +329,9 @@
 	head.appendChild(cssNode);
 };
 
+/**
+ * @namespace LJ.UI Namespace should contain utility functions that are connected with widgets.
+ */
 LJ.UI = LJ.UI || {};
 
 /**
@@ -396,7 +399,35 @@
 	return html;
 };
 
+LJ.UI._mixins = {};
 
+/**
+ * Register a mixin to allow to use it later in the jQuery UI widgets.
+ *
+ * @param {string} name Name of the widget.
+ * @param {Function} module The function that will bootsrap widget. The Function will be applied
+ *     to the widget instance and the return object will represent the public api for the mixin.
+ */
+LJ.UI.mixin = function(name, module) {
+	if (arguments.length === 1) {
+		if (LJ.UI._mixins.hasOwnProperty(name)) {
+			return LJ.UI._mixins[name];
+		} else {
+			LJ.console.log('Warn: Mixin ', name, ' was called but is not defined yet.'); 
+		}
+	} else {
+		LJ.UI._mixins[name] = module;
+	}
+};
+
+/**
+ * @namespace LJ.Support The namespace should contain variables to check whether some funcionality is availible in the current browser.
+ */
+LJ.Support = LJ.Support || {};
+
+LJ.Support.geoLocation = 'geolocation' in navigator;
+
+
 /* object extensions */
 if (!Object.extend)
 	Object.extend = function (d, s){

Tags: can3p, dpetrov, js, livejournal
Subscribe

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 0 comments