Object Closure Pattern / Namespace
Object Closure Pattern / Namespace
by cjgaudin
JavaScript
var register = (function(register, $, Modernizr, undefined) {
var dms = register.dms = register.dms || {},
core = register.core = register.core || {};
//---------------PUBLIC FUNCTIONS--------------------
core.initPage = function() {
$('#loadingContainer').ajaxStart(function() {
showLoadingContainer();
}).ajaxStop(function() {
hideLoadingContainer();
});
};
core.initHtml5Features = function(scriptUrl) {
var cornerScript = scriptUrl + 'jquery.corner.js';
Modernizr.load([{
test: Modernizr.borderradius,
nope: {
'corner': cornerScript
},
callback: {
'corner': function() {
$('#footer').corner('round bottom 5px');
$('#loadingContainer').corner('round 15px');
}
}}
]);
};
core.setActionButtons = function() {
$('body').delegate('.button, .actionButton', 'click', function(e) {
$('#loadingContainer').show();
});
};
//----------------PRIVATE FUNCTIONS------------------
function showLoadingContainer() {
$('#loadingContainer').show();
}
function hideLoadingContainer() {
$('#loadingContainer').hide();
}
//return out the register Module
return register;
})(register || {}, jQuery, Modernizr);