|
2 | 2 |
|
3 | 3 | var async = (function () { |
4 | 4 |
|
5 | | - var time; |
| 5 | + var time = []; |
6 | 6 |
|
7 | 7 | var init = function () { |
8 | 8 | $(document).ajaxSend(function (event, request, settings) { |
9 | 9 | $('#loading').removeClass('hidden'); |
10 | | - core.async.time = new Date().getTime(); |
| 10 | + core.async.time[btoa(settings.url)] = new Date().getTime(); |
11 | 11 | }); |
12 | 12 |
|
13 | 13 | $(document).ajaxComplete(function (event, request, settings) { |
14 | 14 | $('#loading').addClass('hidden'); |
15 | | - core.async.time = (new Date().getTime() - core.async.time) / 1000; |
16 | | - $('#async').html('- queried in ' + core.async.time + 's'); |
| 15 | + core.async.time[btoa(settings.url)] = (new Date().getTime() - core.async.time[btoa(settings.url)]) / 1000; |
| 16 | + $('#async').html('- queried in ' + core.async.time[btoa(settings.url)] + 's'); |
| 17 | + delete core.async.time[btoa(settings.url)]; |
17 | 18 | }); |
18 | 19 |
|
19 | 20 | $(document.body).on('click', '[data-toggle="async"]', function (e) { |
|
42 | 43 | core.message.toast('danger', true, obj.data); |
43 | 44 | } |
44 | 45 | } catch (e) { |
45 | | - core.message.infobox('danger', 0, e.message + data); |
| 46 | + core.message.infobox('danger', 0, e.message + '<br>' + data); |
46 | 47 | } |
47 | 48 | }); |
| 49 | + $('.dropdown.open .dropdown-toggle').dropdown('toggle'); |
48 | 50 | return false; |
49 | 51 | }); |
50 | | - |
| 52 | + |
| 53 | + $(document.body).on('click', '[data-toggle="tab"]', function (e) { |
| 54 | + e.preventDefault(); |
| 55 | + $('.nav').children('li').each(function () { |
| 56 | + $(this).removeClass('active'); |
| 57 | + }); |
| 58 | + $(this).parent().addClass('active'); |
| 59 | + var loadurl = $(this).attr('data-query'); |
| 60 | + var target = $($(this).attr('data-target')); |
| 61 | + $.get(loadurl, function (data) { |
| 62 | + try { |
| 63 | + var obj = $.parseJSON(data); |
| 64 | + if (obj.status == 200) { |
| 65 | + if (obj.event.length > 0) { |
| 66 | + if (obj.data.length > 0) { |
| 67 | + core.message.toast('success', false, obj.data); |
| 68 | + } |
| 69 | + eval(obj.event); |
| 70 | + } else { |
| 71 | + var data = $('<textarea/>').html(obj.data).val(); |
| 72 | + target.html(data); |
| 73 | + core.validator.init(); |
| 74 | + core.form.init(); |
| 75 | + core.proxy.init(); |
| 76 | + } |
| 77 | + } else if (obj.status == 500) { |
| 78 | + core.message.toast('danger', false, obj.data); |
| 79 | + } else { |
| 80 | + core.message.toast('danger', true, obj.data); |
| 81 | + } |
| 82 | + } catch (e) { |
| 83 | + core.message.infobox('danger', 0, e.message + '<br>' + data); |
| 84 | + } |
| 85 | + }); |
| 86 | + return false; |
| 87 | + }); |
| 88 | + |
51 | 89 | $('[data-toggle="select"]').on('change', function (e) { |
52 | 90 | e.preventDefault(); |
53 | 91 | var loadurl = $(this).attr('data-query') + encodeURIComponent($(this).val()); |
|
74 | 112 | core.message.toast('danger', true, obj.data); |
75 | 113 | } |
76 | 114 | } catch (e) { |
77 | | - core.message.infobox('danger', 0, e.message + data); |
| 115 | + core.message.infobox('danger', 0, e.message + '<br>' + data); |
78 | 116 | } |
79 | 117 | }); |
80 | 118 | return false; |
|
103 | 141 | core.message.toast('danger', true, obj.data); |
104 | 142 | } |
105 | 143 | } catch (e) { |
106 | | - core.message.infobox('danger', 0, e.message + data); |
| 144 | + core.message.infobox('danger', 0, e.message + '<br>' + data); |
| 145 | + } |
| 146 | + $('button[data-validate="post"]').prop('disabled', true); |
| 147 | + }); |
| 148 | + return false; |
| 149 | + }); |
| 150 | + |
| 151 | + $(document.body).on('submit', '[data-toggle="form"]', function (e) { |
| 152 | + e.preventDefault(); |
| 153 | + var loadurl = $(this).attr('data-query'); |
| 154 | + var target = $($(this).attr('data-target')); |
| 155 | + |
| 156 | + var dataset = []; |
| 157 | + $(this).find('tr').each(function () { |
| 158 | + if ($(this).attr('id')) { |
| 159 | + var tmp = new Object(); |
| 160 | + tmp['id'] = $(this).attr('id'); |
| 161 | + $(this).find('input').each(function () { |
| 162 | + tmp[$(this).attr('id')] = $(this).val(); |
| 163 | + }); |
| 164 | + dataset.push(tmp); |
| 165 | + } |
| 166 | + }); |
| 167 | + |
| 168 | + $.post(loadurl, {data: JSON.stringify(dataset)}, function (data) { |
| 169 | + try { |
| 170 | + var obj = $.parseJSON(data); |
| 171 | + if (obj.status == 200) { |
| 172 | + if (obj.event.length > 0) { |
| 173 | + if (obj.data.length > 0) { |
| 174 | + core.message.toast('success', false, obj.data); |
| 175 | + } |
| 176 | + eval(obj.event); |
| 177 | + } else { |
| 178 | + var data = $('<textarea/>').html(obj.data).val(); |
| 179 | + target.html(data); |
| 180 | + } |
| 181 | + } else if (obj.status == 500) { |
| 182 | + core.message.toast('danger', false, obj.data); |
| 183 | + } else { |
| 184 | + core.message.toast('danger', true, obj.data); |
| 185 | + } |
| 186 | + } catch (e) { |
| 187 | + core.message.infobox('danger', 0, e.message + '<br>' + data); |
107 | 188 | } |
| 189 | + $('button[data-validate="form"]').prop('disabled', true); |
108 | 190 | }); |
109 | 191 | return false; |
110 | 192 | }); |
|
0 commit comments