diff --git a/VERSION b/VERSION
index f8a3f3e4..da940884 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-Version 2.6.0-development+timestamp.2013.07.06.16.05.45
+Version 2.6.0-development+timestamp.2013.07.07.12.24.46
diff --git a/applications/admin/static/js/web2py.js b/applications/admin/static/js/web2py.js
index c7570263..76515550 100644
--- a/applications/admin/static/js/web2py.js
+++ b/applications/admin/static/js/web2py.js
@@ -1,4 +1,4 @@
-(function ($, undefined) {
+(function (jQuery, undefined) {
/*
* Unobtrusive scripting adapter for jQuery, largely taken from
* the wonderful https://github.com/rails/jquery-ujs
@@ -13,7 +13,7 @@
};
var web2py;
- $.web2py = web2py = {
+ jQuery.web2py = web2py = {
popup: function (url) {
newwindow = window.open(url, 'name', 'height=400,width=600');
@@ -21,23 +21,23 @@
return false;
},
collapse: function (id) {
- $('#' + id).slideToggle();
+ jQuery('#' + id).slideToggle();
},
fade: function (id, value) {
- if(value > 0) $('#' + id).hide().fadeIn('slow');
- else $('#' + id).show().fadeOut('slow');
+ if(value > 0) jQuery('#' + id).hide().fadeIn('slow');
+ else jQuery('#' + id).show().fadeOut('slow');
},
ajax: function (u, s, t) {
query = '';
if(typeof s == "string") {
- d = $(s).serialize();
+ d = jQuery(s).serialize();
if(d) {
query = d;
}
} else {
pcs = [];
if(s != null && s != undefined) for(i = 0; i < s.length; i++) {
- q = $("[name=" + s[i] + "]").serialize();
+ q = jQuery("[name=" + s[i] + "]").serialize();
if(q) {
pcs.push(q);
}
@@ -46,14 +46,14 @@
query = pcs.join("&");
}
}
- $.ajax({
+ jQuery.ajax({
type: "POST",
url: u,
data: query,
success: function (msg) {
if(t) {
if(t == ':eval') eval(msg);
- else if(typeof t == 'string') $("#" + t).html(msg);
+ else if(typeof t == 'string') jQuery("#" + t).html(msg);
else t(msg);
}
}
@@ -66,14 +66,14 @@
*/
var date_format = (typeof w2p_ajax_date_format != 'undefined') ? w2p_ajax_date_format : "%Y-%m-%d";
var datetime_format = (typeof w2p_ajax_datetime_format != 'undefined') ? w2p_ajax_datetime_format : "%Y-%m-%d %H:%M:%S";
- $("input.date", target).each(function () {
+ jQuery("input.date", target).each(function () {
Calendar.setup({
inputField: this,
ifFormat: date_format,
showsTime: false
});
});
- $("input.datetime", target).each(function () {
+ jQuery("input.datetime", target).each(function () {
Calendar.setup({
inputField: this,
ifFormat: datetime_format,
@@ -81,24 +81,24 @@
timeFormat: "24"
});
});
- $("input.time", target).each(function () {
- $(this).timeEntry();
+ jQuery("input.time", target).each(function () {
+ jQuery(this).timeEntry();
});
/*adds btn class to buttons*/
- $('button', target).addClass('btn');
- $('form input[type="submit"], form input[type="button"]', target).addClass('btn');
+ jQuery('button', target).addClass('btn');
+ jQuery('form input[type="submit"], form input[type="button"]', target).addClass('btn');
/*no more inline javascript for PasswordWidget*/
- $('input[type=password][data-w2p_entropy]', target).each(function () {
- web2py.validate_entropy($(this));
+ jQuery('input[type=password][data-w2p_entropy]', target).each(function () {
+ web2py.validate_entropy(jQuery(this));
});
/*no more inline javascript for ListWidget*/
- $('ul.w2p_list', target).each(function () {
+ jQuery('ul.w2p_list', target).each(function () {
function pe(ul, e) {
var new_line = ml(ul);
rel(ul);
- if($(e.target).parent().is(':visible')) {
+ if(jQuery(e.target).parent().is(':visible')) {
//make sure we didn't delete the element before we insert after
- new_line.insertAfter($(e.target).parent());
+ new_line.insertAfter(jQuery(e.target).parent());
} else {
//the line we clicked on was deleted, just add to end of list
new_line.appendTo(ul);
@@ -108,27 +108,27 @@
}
function rl(ul, e) {
- if($(ul).children().length > 1) {
+ if(jQuery(ul).children().length > 1) {
//only remove if we have more than 1 item so the list is never empty
- $(e.target).parent().remove();
+ jQuery(e.target).parent().remove();
}
}
function ml(ul) {
- var line = $(ul).find("li:first").clone(true);
+ var line = jQuery(ul).find("li:first").clone(true);
line.find(':text').val('');
return line;
}
function rel(ul) {
- $(ul).find("li").each(function () {
- var trimmed = $.trim($(this.firstChild).val());
- if(trimmed == '') $(this).remove();
- else $(this.firstChild).val(trimmed);
+ jQuery(ul).find("li").each(function () {
+ var trimmed = jQuery.trim(jQuery(this.firstChild).val());
+ if(trimmed == '') jQuery(this).remove();
+ else jQuery(this.firstChild).val(trimmed);
});
}
var ul = this;
- $(ul).find(":text").after('+ -').keypress(function (e) {
+ jQuery(ul).find(":text").after('+ -').keypress(function (e) {
return(e.which == 13) ? pe(ul, e) : true;
}).next().click(function (e) {
pe(ul, e);
@@ -140,7 +140,7 @@
});
},
ajax_init: function (target) {
- $('.hidden', target).hide();
+ jQuery('.hidden', target).hide();
web2py.manage_errors(target);
web2py.ajax_fields(target);
web2py.show_if_handler(target);
@@ -148,16 +148,16 @@
},
//manage errors in forms
manage_errors: function(target) {
- $('.error', target).hide().slideDown('slow');
- //$('.error', target).hide().fadeIn('slow');
+ jQuery('.error', target).hide().slideDown('slow');
+ //jQuery('.error', target).hide().fadeIn('slow');
},
event_handlers: function () {
/* This is called once for page
* Ideally it should bound all the things that are needed
*/
- var doc = $(document);
+ var doc = jQuery(document);
doc.on('click', '.flash', function (e) {
- var t = $(this);
+ var t = jQuery(this);
if(t.css('top') == '0px') t.slideUp('slow');
else t.fadeOut();
//if I want to display a clickable something
@@ -203,8 +203,8 @@
},
trap_form: function (action, target) {
- $('#' + target + ' form').each(function (i) {
- var form = $(this);
+ jQuery('#' + target + ' form').each(function (i) {
+ var form = jQuery(this);
form.attr('data-w2p_target', target);
if(!form.hasClass('no_trap')) {
//should be there by default ?
@@ -218,8 +218,8 @@
});
},
trap_link: function (target) {
- $('#' + target + ' a.w2p_trap').each(function (i) {
- var link = $(this);
+ jQuery('#' + target + ' a.w2p_trap').each(function (i) {
+ var link = jQuery(this);
link.click(function (e) {
web2py.hide_flash();
web2py.ajax_page('get', link.attr('href'), [], target);
@@ -229,9 +229,9 @@
},
ajax_page: function (method, action, data, target, element) {
//element is a new parameter, but should be put be put in front
- if(element == undefined) element = $(document);
+ if(element == undefined) element = jQuery(document);
if(web2py.fire(element, 'ajax:before')) { //test a usecase, should stop here if returns false
- $.ajax({
+ jQuery.ajax({
'type': method,
'url': action,
'data': data,
@@ -256,10 +256,10 @@
element.trigger('ajax:error', [xhr, status, error]);
},
'complete': function (xhr, status) {
- element.trigger('ajax:complete', [xhr, status]);
+ element.trigger('ajax:complete', [xhr, status]);
var html = xhr.responseText;
var content = xhr.getResponseHeader('web2py-component-content');
- var t = $('#' + target);
+ var t = jQuery('#' + target);
if(content == 'prepend') t.prepend(html);
else if(content == 'append') t.append(html);
else if(content != 'hide') t.html(html);
@@ -272,8 +272,8 @@
},
component: function (action, target, timeout, times, el) {
//element is a new parameter, but should be put in front
- $(function () {
- var jelement = $("#" + target);
+ jQuery(function () {
+ var jelement = jQuery("#" + target);
var element = jelement.get(0);
var statement = "jQuery('#" + target + "').get(0).reload();";
element.reload = function () {
@@ -405,13 +405,13 @@
enableSelector: 'input:disabled, button:disabled, textarea:disabled, select:disabled',
// Triggers an event on an element and returns false if the event result is false
fire: function (obj, name, data) {
- var event = $.Event(name);
+ var event = jQuery.Event(name);
obj.trigger(event, data);
return event.result !== false;
},
// Helper function, needed to provide consistent behavior in IE
stopEverything: function (e) {
- $(e.target).trigger('w2p:everythingStopped');
+ jQuery(e.target).trigger('w2p:everythingStopped');
e.stopImmediatePropagation();
return false;
},
@@ -424,7 +424,7 @@
el.addClass('disabled');
var method = el.prop('type') == 'submit' ? 'val' : 'html';
// store enabled state
- el.data('w2p:enable-with', el[method]);
+ el.data('w2p:enable-with', el[method]());
/* little addition by default*/
if((el.data('w2p_disable_with') == 'default') || (el.data('w2p_disable_with') === undefined)) {
el.data('w2p_disable_with', 'Working...');
@@ -454,46 +454,46 @@
},
//helper for flash messages
flash: function(message, status) {
- var flash = $('.flash');
+ var flash = jQuery('.flash');
web2py.hide_flash();
flash.html(message).addClass(status);
if(flash.html()) flash.append(' × ').slideDown();
},
hide_flash: function() {
- $('.flash').hide().html('');
+ jQuery('.flash').hide().html('');
},
show_if_handler: function(target) {
var triggers = {};
var show_if = function () {
- var t = $(this);
+ var t = jQuery(this);
var id = t.attr('id');
t.attr('value', t.val());
for(var k = 0; k < triggers[id].length; k++) {
- var dep = $('#' + triggers[id][k], target);
- var tr = $('#' + triggers[id][k] + '__row', target);
+ var dep = jQuery('#' + triggers[id][k], target);
+ var tr = jQuery('#' + triggers[id][k] + '__row', target);
if(t.is(dep.attr('data-show-if'))) tr.slideDown();
else tr.hide();
}
};
- $('[data-show-trigger]', target).each(function () {
- var name = $(this).attr('data-show-trigger');
+ jQuery('[data-show-trigger]', target).each(function () {
+ var name = jQuery(this).attr('data-show-trigger');
if(!triggers[name]) triggers[name] = [];
- triggers[name].push($(this).attr('id'));
+ triggers[name].push(jQuery(this).attr('id'));
});
for(var name in triggers) {
- $('#' + name, target).change(show_if).keyup(show_if);
- show_if.call($('#' + name, target));
+ jQuery('#' + name, target).change(show_if).keyup(show_if);
+ show_if.call(jQuery('#' + name, target));
};
},
component_handler : function (target) {
- $('div[data-w2p_remote]', target).each(function () {
+ jQuery('div[data-w2p_remote]', target).each(function () {
var remote, times, timeout, target;
- var el = $(this);
+ var el = jQuery(this);
remote = el.data('w2p_remote');
times = el.data('w2p_times');
timeout = el.data('w2p_timeout');
target = el.attr('id');
- web2py.component(remote, target, timeout, times, $(this));
+ web2py.component(remote, target, timeout, times, jQuery(this));
}
)
},
@@ -539,36 +539,36 @@
toremove = el.closest(toremove);
if(!toremove.length) {
//this enables removal of whatever selector if a closest is not found
- toremove = $(toremove);
+ toremove = jQuery(toremove);
}
toremove.remove();
}
/* removal code moved to the ajax:success event - END */
},
a_handlers: function () {
- var el = $(document);
+ var el = jQuery(document);
el.on('click', 'a[data-w2p_method]', function (e) {
- web2py.a_handler($(this), e);
+ web2py.a_handler(jQuery(this), e);
});
/* removal of element should happen only on success */
el.on('ajax:success', 'a[data-w2p_method][data-w2p_remove]', function (e) {
- var el = $(this);
+ var el = jQuery(this);
var toremove = el.data('w2p_remove');
if(toremove != undefined) {
toremove = el.closest(toremove);
if(!toremove.length) {
//this enables removal of whatever selector if a closest is not found
- toremove = $(toremove);
+ toremove = jQuery(toremove);
}
toremove.remove();
}
});
el.on('ajax:beforeSend', 'a[data-w2p_method][data-w2p_disable_with]', function (e) {
- web2py.disableElement($(this));
+ web2py.disableElement(jQuery(this));
});
/*re-enable click on completion*/
el.on('ajax:complete', 'a[data-w2p_method][data-w2p_disable_with]', function (e) {
- web2py.enableElement($(this));
+ web2py.enableElement(jQuery(this));
});
},
/* Disables form elements:
@@ -578,7 +578,7 @@
*/
disableFormElements: function(form) {
form.find(web2py.disableSelector).each(function() {
- var element = $(this), method = element.is('button') ? 'html' : 'val';
+ var element = jQuery(this), method = element.is('button') ? 'html' : 'val';
var disable_with = element.data('w2p_disable_with');
if (disable_with == undefined) {
element.data('w2p_disable_with', element[method]())
@@ -595,26 +595,26 @@
*/
enableFormElements: function(form) {
form.find(web2py.enableSelector).each(function() {
- var element = $(this), method = element.is('button') ? 'html' : 'val';
+ var element = jQuery(this), method = element.is('button') ? 'html' : 'val';
if (element.data('w2p:enable-with')) element[method](element.data('w2p:enable-with'));
element.prop('disabled', false);
});
},
form_handlers: function() {
- var el = $(document);
+ var el = jQuery(document);
el.on('ajax:beforeSend', 'form[data-w2p_target]', function (e) {
- web2py.disableFormElements($(this));
+ web2py.disableFormElements(jQuery(this));
});
el.on('ajax:complete', 'form[data-w2p_target]', function (e) {
- web2py.enableFormElements($(this));
+ web2py.enableFormElements(jQuery(this));
});
}
}
//end of functions
//main hook
- $(function () {
- var flash = $('.flash');
+ jQuery(function () {
+ var flash = jQuery('.flash');
flash.hide();
if(flash.html()) web2py.flash(flash.html());
web2py.ajax_init(document);
@@ -626,28 +626,28 @@
})(jQuery);
/* compatibility code - start */
-ajax = $.web2py.ajax;
-web2py_component = $.web2py.component;
-web2py_websocket = $.web2py.websocket;
-web2py_ajax_page = $.web2py.ajax_page;
+ajax = jQuery.web2py.ajax;
+web2py_component = jQuery.web2py.component;
+web2py_websocket = jQuery.web2py.websocket;
+web2py_ajax_page = jQuery.web2py.ajax_page;
//needed for IS_STRONG(entropy)
-web2py_validate_entropy = $.web2py.validate_entropy;
+web2py_validate_entropy = jQuery.web2py.validate_entropy;
//needed for crud.search and SQLFORM.grid's search
-web2py_ajax_fields = $.web2py.ajax_fields;
+web2py_ajax_fields = jQuery.web2py.ajax_fields;
//used for LOAD(ajax=False)
-web2py_trap_form = $.web2py.trap_form;
+web2py_trap_form = jQuery.web2py.trap_form;
/*undocumented - rare*/
-popup = $.web2py.popup;
-collapse = $.web2py.collapse;
-fade = $.web2py.fade;
+popup = jQuery.web2py.popup;
+collapse = jQuery.web2py.collapse;
+fade = jQuery.web2py.fade;
/* internals - shouldn't be needed
-web2py_ajax_init = $.web2py.ajax_init;
-web2py_event_handlers = $.web2py.event_handlers;
+web2py_ajax_init = jQuery.web2py.ajax_init;
+web2py_event_handlers = jQuery.web2py.event_handlers;
-web2py_trap_link = $.web2py.trap_link;
-web2py_calc_entropy = $.web2py.calc_entropy;
+web2py_trap_link = jQuery.web2py.trap_link;
+web2py_calc_entropy = jQuery.web2py.calc_entropy;
*/
/* compatibility code - end*/
diff --git a/applications/examples/static/js/web2py.js b/applications/examples/static/js/web2py.js
index c7570263..76515550 100644
--- a/applications/examples/static/js/web2py.js
+++ b/applications/examples/static/js/web2py.js
@@ -1,4 +1,4 @@
-(function ($, undefined) {
+(function (jQuery, undefined) {
/*
* Unobtrusive scripting adapter for jQuery, largely taken from
* the wonderful https://github.com/rails/jquery-ujs
@@ -13,7 +13,7 @@
};
var web2py;
- $.web2py = web2py = {
+ jQuery.web2py = web2py = {
popup: function (url) {
newwindow = window.open(url, 'name', 'height=400,width=600');
@@ -21,23 +21,23 @@
return false;
},
collapse: function (id) {
- $('#' + id).slideToggle();
+ jQuery('#' + id).slideToggle();
},
fade: function (id, value) {
- if(value > 0) $('#' + id).hide().fadeIn('slow');
- else $('#' + id).show().fadeOut('slow');
+ if(value > 0) jQuery('#' + id).hide().fadeIn('slow');
+ else jQuery('#' + id).show().fadeOut('slow');
},
ajax: function (u, s, t) {
query = '';
if(typeof s == "string") {
- d = $(s).serialize();
+ d = jQuery(s).serialize();
if(d) {
query = d;
}
} else {
pcs = [];
if(s != null && s != undefined) for(i = 0; i < s.length; i++) {
- q = $("[name=" + s[i] + "]").serialize();
+ q = jQuery("[name=" + s[i] + "]").serialize();
if(q) {
pcs.push(q);
}
@@ -46,14 +46,14 @@
query = pcs.join("&");
}
}
- $.ajax({
+ jQuery.ajax({
type: "POST",
url: u,
data: query,
success: function (msg) {
if(t) {
if(t == ':eval') eval(msg);
- else if(typeof t == 'string') $("#" + t).html(msg);
+ else if(typeof t == 'string') jQuery("#" + t).html(msg);
else t(msg);
}
}
@@ -66,14 +66,14 @@
*/
var date_format = (typeof w2p_ajax_date_format != 'undefined') ? w2p_ajax_date_format : "%Y-%m-%d";
var datetime_format = (typeof w2p_ajax_datetime_format != 'undefined') ? w2p_ajax_datetime_format : "%Y-%m-%d %H:%M:%S";
- $("input.date", target).each(function () {
+ jQuery("input.date", target).each(function () {
Calendar.setup({
inputField: this,
ifFormat: date_format,
showsTime: false
});
});
- $("input.datetime", target).each(function () {
+ jQuery("input.datetime", target).each(function () {
Calendar.setup({
inputField: this,
ifFormat: datetime_format,
@@ -81,24 +81,24 @@
timeFormat: "24"
});
});
- $("input.time", target).each(function () {
- $(this).timeEntry();
+ jQuery("input.time", target).each(function () {
+ jQuery(this).timeEntry();
});
/*adds btn class to buttons*/
- $('button', target).addClass('btn');
- $('form input[type="submit"], form input[type="button"]', target).addClass('btn');
+ jQuery('button', target).addClass('btn');
+ jQuery('form input[type="submit"], form input[type="button"]', target).addClass('btn');
/*no more inline javascript for PasswordWidget*/
- $('input[type=password][data-w2p_entropy]', target).each(function () {
- web2py.validate_entropy($(this));
+ jQuery('input[type=password][data-w2p_entropy]', target).each(function () {
+ web2py.validate_entropy(jQuery(this));
});
/*no more inline javascript for ListWidget*/
- $('ul.w2p_list', target).each(function () {
+ jQuery('ul.w2p_list', target).each(function () {
function pe(ul, e) {
var new_line = ml(ul);
rel(ul);
- if($(e.target).parent().is(':visible')) {
+ if(jQuery(e.target).parent().is(':visible')) {
//make sure we didn't delete the element before we insert after
- new_line.insertAfter($(e.target).parent());
+ new_line.insertAfter(jQuery(e.target).parent());
} else {
//the line we clicked on was deleted, just add to end of list
new_line.appendTo(ul);
@@ -108,27 +108,27 @@
}
function rl(ul, e) {
- if($(ul).children().length > 1) {
+ if(jQuery(ul).children().length > 1) {
//only remove if we have more than 1 item so the list is never empty
- $(e.target).parent().remove();
+ jQuery(e.target).parent().remove();
}
}
function ml(ul) {
- var line = $(ul).find("li:first").clone(true);
+ var line = jQuery(ul).find("li:first").clone(true);
line.find(':text').val('');
return line;
}
function rel(ul) {
- $(ul).find("li").each(function () {
- var trimmed = $.trim($(this.firstChild).val());
- if(trimmed == '') $(this).remove();
- else $(this.firstChild).val(trimmed);
+ jQuery(ul).find("li").each(function () {
+ var trimmed = jQuery.trim(jQuery(this.firstChild).val());
+ if(trimmed == '') jQuery(this).remove();
+ else jQuery(this.firstChild).val(trimmed);
});
}
var ul = this;
- $(ul).find(":text").after('+ -').keypress(function (e) {
+ jQuery(ul).find(":text").after('+ -').keypress(function (e) {
return(e.which == 13) ? pe(ul, e) : true;
}).next().click(function (e) {
pe(ul, e);
@@ -140,7 +140,7 @@
});
},
ajax_init: function (target) {
- $('.hidden', target).hide();
+ jQuery('.hidden', target).hide();
web2py.manage_errors(target);
web2py.ajax_fields(target);
web2py.show_if_handler(target);
@@ -148,16 +148,16 @@
},
//manage errors in forms
manage_errors: function(target) {
- $('.error', target).hide().slideDown('slow');
- //$('.error', target).hide().fadeIn('slow');
+ jQuery('.error', target).hide().slideDown('slow');
+ //jQuery('.error', target).hide().fadeIn('slow');
},
event_handlers: function () {
/* This is called once for page
* Ideally it should bound all the things that are needed
*/
- var doc = $(document);
+ var doc = jQuery(document);
doc.on('click', '.flash', function (e) {
- var t = $(this);
+ var t = jQuery(this);
if(t.css('top') == '0px') t.slideUp('slow');
else t.fadeOut();
//if I want to display a clickable something
@@ -203,8 +203,8 @@
},
trap_form: function (action, target) {
- $('#' + target + ' form').each(function (i) {
- var form = $(this);
+ jQuery('#' + target + ' form').each(function (i) {
+ var form = jQuery(this);
form.attr('data-w2p_target', target);
if(!form.hasClass('no_trap')) {
//should be there by default ?
@@ -218,8 +218,8 @@
});
},
trap_link: function (target) {
- $('#' + target + ' a.w2p_trap').each(function (i) {
- var link = $(this);
+ jQuery('#' + target + ' a.w2p_trap').each(function (i) {
+ var link = jQuery(this);
link.click(function (e) {
web2py.hide_flash();
web2py.ajax_page('get', link.attr('href'), [], target);
@@ -229,9 +229,9 @@
},
ajax_page: function (method, action, data, target, element) {
//element is a new parameter, but should be put be put in front
- if(element == undefined) element = $(document);
+ if(element == undefined) element = jQuery(document);
if(web2py.fire(element, 'ajax:before')) { //test a usecase, should stop here if returns false
- $.ajax({
+ jQuery.ajax({
'type': method,
'url': action,
'data': data,
@@ -256,10 +256,10 @@
element.trigger('ajax:error', [xhr, status, error]);
},
'complete': function (xhr, status) {
- element.trigger('ajax:complete', [xhr, status]);
+ element.trigger('ajax:complete', [xhr, status]);
var html = xhr.responseText;
var content = xhr.getResponseHeader('web2py-component-content');
- var t = $('#' + target);
+ var t = jQuery('#' + target);
if(content == 'prepend') t.prepend(html);
else if(content == 'append') t.append(html);
else if(content != 'hide') t.html(html);
@@ -272,8 +272,8 @@
},
component: function (action, target, timeout, times, el) {
//element is a new parameter, but should be put in front
- $(function () {
- var jelement = $("#" + target);
+ jQuery(function () {
+ var jelement = jQuery("#" + target);
var element = jelement.get(0);
var statement = "jQuery('#" + target + "').get(0).reload();";
element.reload = function () {
@@ -405,13 +405,13 @@
enableSelector: 'input:disabled, button:disabled, textarea:disabled, select:disabled',
// Triggers an event on an element and returns false if the event result is false
fire: function (obj, name, data) {
- var event = $.Event(name);
+ var event = jQuery.Event(name);
obj.trigger(event, data);
return event.result !== false;
},
// Helper function, needed to provide consistent behavior in IE
stopEverything: function (e) {
- $(e.target).trigger('w2p:everythingStopped');
+ jQuery(e.target).trigger('w2p:everythingStopped');
e.stopImmediatePropagation();
return false;
},
@@ -424,7 +424,7 @@
el.addClass('disabled');
var method = el.prop('type') == 'submit' ? 'val' : 'html';
// store enabled state
- el.data('w2p:enable-with', el[method]);
+ el.data('w2p:enable-with', el[method]());
/* little addition by default*/
if((el.data('w2p_disable_with') == 'default') || (el.data('w2p_disable_with') === undefined)) {
el.data('w2p_disable_with', 'Working...');
@@ -454,46 +454,46 @@
},
//helper for flash messages
flash: function(message, status) {
- var flash = $('.flash');
+ var flash = jQuery('.flash');
web2py.hide_flash();
flash.html(message).addClass(status);
if(flash.html()) flash.append(' × ').slideDown();
},
hide_flash: function() {
- $('.flash').hide().html('');
+ jQuery('.flash').hide().html('');
},
show_if_handler: function(target) {
var triggers = {};
var show_if = function () {
- var t = $(this);
+ var t = jQuery(this);
var id = t.attr('id');
t.attr('value', t.val());
for(var k = 0; k < triggers[id].length; k++) {
- var dep = $('#' + triggers[id][k], target);
- var tr = $('#' + triggers[id][k] + '__row', target);
+ var dep = jQuery('#' + triggers[id][k], target);
+ var tr = jQuery('#' + triggers[id][k] + '__row', target);
if(t.is(dep.attr('data-show-if'))) tr.slideDown();
else tr.hide();
}
};
- $('[data-show-trigger]', target).each(function () {
- var name = $(this).attr('data-show-trigger');
+ jQuery('[data-show-trigger]', target).each(function () {
+ var name = jQuery(this).attr('data-show-trigger');
if(!triggers[name]) triggers[name] = [];
- triggers[name].push($(this).attr('id'));
+ triggers[name].push(jQuery(this).attr('id'));
});
for(var name in triggers) {
- $('#' + name, target).change(show_if).keyup(show_if);
- show_if.call($('#' + name, target));
+ jQuery('#' + name, target).change(show_if).keyup(show_if);
+ show_if.call(jQuery('#' + name, target));
};
},
component_handler : function (target) {
- $('div[data-w2p_remote]', target).each(function () {
+ jQuery('div[data-w2p_remote]', target).each(function () {
var remote, times, timeout, target;
- var el = $(this);
+ var el = jQuery(this);
remote = el.data('w2p_remote');
times = el.data('w2p_times');
timeout = el.data('w2p_timeout');
target = el.attr('id');
- web2py.component(remote, target, timeout, times, $(this));
+ web2py.component(remote, target, timeout, times, jQuery(this));
}
)
},
@@ -539,36 +539,36 @@
toremove = el.closest(toremove);
if(!toremove.length) {
//this enables removal of whatever selector if a closest is not found
- toremove = $(toremove);
+ toremove = jQuery(toremove);
}
toremove.remove();
}
/* removal code moved to the ajax:success event - END */
},
a_handlers: function () {
- var el = $(document);
+ var el = jQuery(document);
el.on('click', 'a[data-w2p_method]', function (e) {
- web2py.a_handler($(this), e);
+ web2py.a_handler(jQuery(this), e);
});
/* removal of element should happen only on success */
el.on('ajax:success', 'a[data-w2p_method][data-w2p_remove]', function (e) {
- var el = $(this);
+ var el = jQuery(this);
var toremove = el.data('w2p_remove');
if(toremove != undefined) {
toremove = el.closest(toremove);
if(!toremove.length) {
//this enables removal of whatever selector if a closest is not found
- toremove = $(toremove);
+ toremove = jQuery(toremove);
}
toremove.remove();
}
});
el.on('ajax:beforeSend', 'a[data-w2p_method][data-w2p_disable_with]', function (e) {
- web2py.disableElement($(this));
+ web2py.disableElement(jQuery(this));
});
/*re-enable click on completion*/
el.on('ajax:complete', 'a[data-w2p_method][data-w2p_disable_with]', function (e) {
- web2py.enableElement($(this));
+ web2py.enableElement(jQuery(this));
});
},
/* Disables form elements:
@@ -578,7 +578,7 @@
*/
disableFormElements: function(form) {
form.find(web2py.disableSelector).each(function() {
- var element = $(this), method = element.is('button') ? 'html' : 'val';
+ var element = jQuery(this), method = element.is('button') ? 'html' : 'val';
var disable_with = element.data('w2p_disable_with');
if (disable_with == undefined) {
element.data('w2p_disable_with', element[method]())
@@ -595,26 +595,26 @@
*/
enableFormElements: function(form) {
form.find(web2py.enableSelector).each(function() {
- var element = $(this), method = element.is('button') ? 'html' : 'val';
+ var element = jQuery(this), method = element.is('button') ? 'html' : 'val';
if (element.data('w2p:enable-with')) element[method](element.data('w2p:enable-with'));
element.prop('disabled', false);
});
},
form_handlers: function() {
- var el = $(document);
+ var el = jQuery(document);
el.on('ajax:beforeSend', 'form[data-w2p_target]', function (e) {
- web2py.disableFormElements($(this));
+ web2py.disableFormElements(jQuery(this));
});
el.on('ajax:complete', 'form[data-w2p_target]', function (e) {
- web2py.enableFormElements($(this));
+ web2py.enableFormElements(jQuery(this));
});
}
}
//end of functions
//main hook
- $(function () {
- var flash = $('.flash');
+ jQuery(function () {
+ var flash = jQuery('.flash');
flash.hide();
if(flash.html()) web2py.flash(flash.html());
web2py.ajax_init(document);
@@ -626,28 +626,28 @@
})(jQuery);
/* compatibility code - start */
-ajax = $.web2py.ajax;
-web2py_component = $.web2py.component;
-web2py_websocket = $.web2py.websocket;
-web2py_ajax_page = $.web2py.ajax_page;
+ajax = jQuery.web2py.ajax;
+web2py_component = jQuery.web2py.component;
+web2py_websocket = jQuery.web2py.websocket;
+web2py_ajax_page = jQuery.web2py.ajax_page;
//needed for IS_STRONG(entropy)
-web2py_validate_entropy = $.web2py.validate_entropy;
+web2py_validate_entropy = jQuery.web2py.validate_entropy;
//needed for crud.search and SQLFORM.grid's search
-web2py_ajax_fields = $.web2py.ajax_fields;
+web2py_ajax_fields = jQuery.web2py.ajax_fields;
//used for LOAD(ajax=False)
-web2py_trap_form = $.web2py.trap_form;
+web2py_trap_form = jQuery.web2py.trap_form;
/*undocumented - rare*/
-popup = $.web2py.popup;
-collapse = $.web2py.collapse;
-fade = $.web2py.fade;
+popup = jQuery.web2py.popup;
+collapse = jQuery.web2py.collapse;
+fade = jQuery.web2py.fade;
/* internals - shouldn't be needed
-web2py_ajax_init = $.web2py.ajax_init;
-web2py_event_handlers = $.web2py.event_handlers;
+web2py_ajax_init = jQuery.web2py.ajax_init;
+web2py_event_handlers = jQuery.web2py.event_handlers;
-web2py_trap_link = $.web2py.trap_link;
-web2py_calc_entropy = $.web2py.calc_entropy;
+web2py_trap_link = jQuery.web2py.trap_link;
+web2py_calc_entropy = jQuery.web2py.calc_entropy;
*/
/* compatibility code - end*/
diff --git a/applications/welcome/static/js/web2py.js b/applications/welcome/static/js/web2py.js
index 8d7ddf85..76515550 100644
--- a/applications/welcome/static/js/web2py.js
+++ b/applications/welcome/static/js/web2py.js
@@ -256,7 +256,7 @@
element.trigger('ajax:error', [xhr, status, error]);
},
'complete': function (xhr, status) {
- // element.trigger('ajax:complete', [xhr, status]);
+ element.trigger('ajax:complete', [xhr, status]);
var html = xhr.responseText;
var content = xhr.getResponseHeader('web2py-component-content');
var t = jQuery('#' + target);
@@ -424,7 +424,7 @@
el.addClass('disabled');
var method = el.prop('type') == 'submit' ? 'val' : 'html';
// store enabled state
- el.data('w2p:enable-with', el[method]);
+ el.data('w2p:enable-with', el[method]());
/* little addition by default*/
if((el.data('w2p_disable_with') == 'default') || (el.data('w2p_disable_with') === undefined)) {
el.data('w2p_disable_with', 'Working...');