mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-01-14 00:39:57 +09:00
#19524468 XML JS Filter 코드 정리 : 생성되는 코드가 조금 더 가볍도록 수정
git-svn-id: http://xe-core.googlecode.com/svn/sandbox@8086 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
parent
5f38afe37e
commit
fadefd0964
2 changed files with 89 additions and 81 deletions
|
|
@ -111,13 +111,15 @@ var Validator = xe.createApp('Validator', {
|
|||
if (eq_val != val) return (result = (!!self.cast('ALERT', [form, name, 'equalto']) && false));
|
||||
}
|
||||
|
||||
$.each(rule, function() {
|
||||
var ret = self.cast('APPLY_RULE', [this, val]);
|
||||
if (!ret) {
|
||||
self.cast('ALERT', [form, name, 'invalid_'+this]);
|
||||
return (result = false);
|
||||
}
|
||||
});
|
||||
if (rule) {
|
||||
$.each(rule, function() {
|
||||
var ret = self.cast('APPLY_RULE', [this, val]);
|
||||
if (!ret) {
|
||||
self.cast('ALERT', [form, name, 'invalid_'+this]);
|
||||
return (result = false);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
if (!result) return false;
|
||||
});
|
||||
|
|
@ -178,7 +180,7 @@ var Validator = xe.createApp('Validator', {
|
|||
delete extras[name];
|
||||
},
|
||||
API_APPLY_RULE : function(sender, params) {
|
||||
var name = params[0].toLowerCase();
|
||||
var name = params[0];
|
||||
var value = params[1];
|
||||
|
||||
if (typeof(rules[name]) == 'undefined') return true; // no filter
|
||||
|
|
@ -294,8 +296,35 @@ function filterAlertMessage(ret_obj) {
|
|||
* @brief Function to process filters
|
||||
* @deprecated
|
||||
*/
|
||||
function procFilter(fo_obj, filter_func)
|
||||
{
|
||||
filter_func(fo_obj);
|
||||
function procFilter(form, filter_func) {
|
||||
filter_func(form);
|
||||
return false;
|
||||
}
|
||||
|
||||
function legacy_filter(filter_name, form, module, act, callback, responses, confirm_msg) {
|
||||
var v = xe.getApp('validator')[0], $ = jQuery, args = [];
|
||||
|
||||
if (!v) return false;
|
||||
|
||||
if (!form.elements['_filter']) $(form).prepend('<input type="hidden" name="_filter" />');
|
||||
form.elements['_filter'].value = filter_name;
|
||||
|
||||
args[0] = filter_name;
|
||||
args[1] = function(f) {
|
||||
var params = {}, res = [], elms = f.elements, data = $(f).serializeArray();
|
||||
$.each(data, function(i, field) {
|
||||
var v = $.trim(field.value);
|
||||
if(!v) return false;
|
||||
if(/\[\]$/.test(field.name)) field.name = field.name.replace(/\[\]$/, '');
|
||||
if(params[field.name]) params[field.name] += '|@|'+v;
|
||||
else params[field.name] = field.value;
|
||||
});
|
||||
if (confirm_msg && !confirm(confirm_msg)) return false;
|
||||
exec_xml(module, act, params, callback, responses, params, form);
|
||||
};
|
||||
|
||||
v.cast('ADD_CALLBACK', args);
|
||||
v.cast('VALIDATE', [form, filter_name]);
|
||||
|
||||
return false;
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue