|
63 | 63 | } |
64 | 64 |
|
65 | 65 | //Create div element for delete confirmation dialog |
66 | | - self._$deleteRecordDiv = $('<div><p><span class="ui-icon ui-icon-alert" style="float:left; margin:0 7px 20px 0;"></span><span class="jtable-delete-confirm-message"></span></p></div>').appendTo(self._$mainContainer); |
67 | | - |
68 | | - //Prepare dialog |
69 | | - self._$deleteRecordDiv.dialog({ |
70 | | - autoOpen: false, |
71 | | - show: self.options.dialogShowEffect, |
72 | | - hide: self.options.dialogHideEffect, |
73 | | - modal: true, |
74 | | - title: self.options.messages.areYouSure, |
75 | | - buttons: |
76 | | - [{ //cancel button |
77 | | - text: self.options.messages.cancel, |
78 | | - click: function () { |
79 | | - self._$deleteRecordDiv.dialog("close"); |
80 | | - } |
81 | | - }, {//delete button |
82 | | - id: 'DeleteDialogButton', |
83 | | - text: self.options.messages.deleteText, |
84 | | - click: function () { |
85 | | - |
86 | | - //row maybe removed by another source, if so, do nothing |
87 | | - if (self._$deletingRow.hasClass('jtable-row-removed')) { |
88 | | - self._$deleteRecordDiv.dialog('close'); |
89 | | - return; |
90 | | - } |
91 | | - |
92 | | - var $deleteButton = self._$deleteRecordDiv.parent().find('#DeleteDialogButton'); |
93 | | - self._setEnabledOfDialogButton($deleteButton, false, self.options.messages.deleting); |
94 | | - self._deleteRecordFromServer( |
95 | | - self._$deletingRow, |
96 | | - function () { |
97 | | - self._removeRowsFromTableWithAnimation(self._$deletingRow); |
98 | | - self._$deleteRecordDiv.dialog('close'); |
99 | | - }, |
100 | | - function (message) { //error |
101 | | - self._$deleteRecordDiv.dialog('close'); |
102 | | - self._showError(message); |
103 | | - self._setEnabledOfDialogButton($deleteButton, true, self.options.messages.deleteText); |
104 | | - } |
105 | | - ); |
106 | | - } |
107 | | - }], |
108 | | - close: function () { |
109 | | - var $deleteButton = self._$deleteRecordDiv.parent().find('#DeleteDialogButton'); |
110 | | - self._setEnabledOfDialogButton($deleteButton, true, self.options.messages.deleteText); |
111 | | - } |
112 | | - }); |
| 66 | + self._$deleteRecordDiv = $('<div />').appendTo(self._$mainContainer); |
| 67 | + |
| 68 | + if (self.options.useBootstrap) { |
| 69 | + self._$deleteRecordDiv.addClass("modal hide fade"); |
| 70 | + self._$deleteRecordDiv.append('<div role="document" class="modal-dialog"><div class="modal-content">'+ |
| 71 | + '<div class="modal-header">' + |
| 72 | + '<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>' + |
| 73 | + '<h3>' + self.options.messages.areYouSure + '</h3></div>' + |
| 74 | + '<div class="modal-body" style="min-width: 300px; min-heigth: 300px;"></div>' + |
| 75 | + '<div class="modal-footer">' + |
| 76 | + '<a href="#" class="btn" data-dismiss="modal" aria-hidden="true">' + self.options.messages.cancel + '</a>' + |
| 77 | + '<a id="DeleteDialogButton" href="#" class="save btn btn-primary">' + self.options.messages.deleteText + '</a></div></div></div>'); |
| 78 | + |
| 79 | + self._$deleteRecordDiv.modal({show: false}); |
| 80 | + self._$deleteRecordDiv.find("#DeleteDialogButton").click(function(event) { |
| 81 | + |
| 82 | + //row maybe removed by another source, if so, do nothing |
| 83 | + if (self._$deletingRow.hasClass('jtable-row-removed')) { |
| 84 | + self._$deleteRecordDiv.dialog('close'); |
| 85 | + return; |
| 86 | + } |
| 87 | + |
| 88 | + var $deleteButton = $(this); |
| 89 | + self._setEnabledOfDialogButton(self.options.useBootstrap, $deleteButton, false, self.options.messages.deleting); |
| 90 | + self._deleteRecordFromServer( |
| 91 | + self._$deletingRow, |
| 92 | + function () { |
| 93 | + self._removeRowsFromTableWithAnimation(self._$deletingRow); |
| 94 | + self._$deleteRecordDiv.modal("hide"); |
| 95 | + }, |
| 96 | + function (message) { //error |
| 97 | + self._showError(message); |
| 98 | + self._setEnabledOfDialogButton(self.options.useBootstrap, $deleteButton, true, self.options.messages.deleteText); |
| 99 | + } |
| 100 | + ); |
| 101 | + |
| 102 | + }); |
| 103 | + var event = self._getHiddenEvent(); |
| 104 | + self._$deleteRecordDiv.on(event, function(event) { |
| 105 | + var $deleteButton = $(this).find('#DeleteDialogButton'); |
| 106 | + self._setEnabledOfDialogButton(self.options.useBootstrap, $deleteButton, true, self.options.messages.deleteText); |
| 107 | + }); |
| 108 | + } else { |
| 109 | + self._$deleteRecordDiv.append('<p><span class="ui-icon ui-icon-alert" style="float:left; margin:0 7px 20px 0;"></span><span class="jtable-delete-confirm-message"></span></p>'); |
| 110 | + |
| 111 | + //Prepare dialog |
| 112 | + self._$deleteRecordDiv.dialog({ |
| 113 | + autoOpen: false, |
| 114 | + show: self.options.dialogShowEffect, |
| 115 | + hide: self.options.dialogHideEffect, |
| 116 | + modal: true, |
| 117 | + title: self.options.messages.areYouSure, |
| 118 | + buttons: |
| 119 | + [{ //cancel button |
| 120 | + text: self.options.messages.cancel, |
| 121 | + click: function () { |
| 122 | + self._$deleteRecordDiv.dialog("close"); |
| 123 | + } |
| 124 | + }, {//delete button |
| 125 | + id: 'DeleteDialogButton', |
| 126 | + text: self.options.messages.deleteText, |
| 127 | + click: function () { |
| 128 | + |
| 129 | + //row maybe removed by another source, if so, do nothing |
| 130 | + if (self._$deletingRow.hasClass('jtable-row-removed')) { |
| 131 | + self._$deleteRecordDiv.dialog('close'); |
| 132 | + return; |
| 133 | + } |
| 134 | + |
| 135 | + var $deleteButton = $('#DeleteDialogButton'); |
| 136 | + self._setEnabledOfDialogButton(self.options.useBootstrap, $deleteButton, false, self.options.messages.deleting); |
| 137 | + self._deleteRecordFromServer( |
| 138 | + self._$deletingRow, |
| 139 | + function () { |
| 140 | + self._removeRowsFromTableWithAnimation(self._$deletingRow); |
| 141 | + self._$deleteRecordDiv.dialog('close'); |
| 142 | + }, |
| 143 | + function (message) { //error |
| 144 | + self._showError(message); |
| 145 | + self._setEnabledOfDialogButton(self.options.useBootstrap, $deleteButton, true, self.options.messages.deleteText); |
| 146 | + } |
| 147 | + ); |
| 148 | + } |
| 149 | + }], |
| 150 | + close: function () { |
| 151 | + var $deleteButton = $('#DeleteDialogButton'); |
| 152 | + self._setEnabledOfDialogButton(self.options.useBootstrap, $deleteButton, true, self.options.messages.deleteText); |
| 153 | + } |
| 154 | + }); |
| 155 | + } |
113 | 156 | }, |
114 | 157 |
|
115 | 158 | /************************************************************************ |
|
308 | 351 |
|
309 | 352 | if (deleteConfirm != false) { |
310 | 353 | //Confirmation |
311 | | - self._$deleteRecordDiv.find('.jtable-delete-confirm-message').html(deleteConfirmMessage); |
312 | | - self._showDeleteDialog($row); |
| 354 | + if (self.options.useBootstrap) { |
| 355 | + self._$deleteRecordDiv.find(".modal-body").html(deleteConfirmMessage); |
| 356 | + } else { |
| 357 | + self._$deleteRecordDiv.find('.jtable-delete-confirm-message').html(deleteConfirmMessage); |
| 358 | + } |
| 359 | + |
| 360 | + self._showDeleteDialog($row); |
313 | 361 | } else { |
314 | 362 | //No confirmation |
315 | 363 | self._deleteRecordFromServer( |
|
328 | 376 | *************************************************************************/ |
329 | 377 | _showDeleteDialog: function ($row) { |
330 | 378 | this._$deletingRow = $row; |
331 | | - this._$deleteRecordDiv.dialog('open'); |
| 379 | + if (this.options.useBootstrap) { |
| 380 | + this._$deleteRecordDiv.modal("show"); |
| 381 | + } else { |
| 382 | + this._$deleteRecordDiv.dialog('open'); |
| 383 | + } |
332 | 384 | }, |
333 | 385 |
|
334 | 386 | /* Performs an ajax call to server to delete record |
|
0 commit comments