Skip to content

Commit 073b25b

Browse files
committed
Bootstrap progress-bar enhanced shifting to 100% on completion
1 parent 4a8fdcc commit 073b25b

File tree

1 file changed

+27
-5
lines changed

1 file changed

+27
-5
lines changed

src/js/api.library.js

Lines changed: 27 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -33,8 +33,19 @@ api.spinner.stop = function () {
3333
}
3434

3535
if (!api.spinner.count) {
36-
$(C_API_SELECTOR_SPINNER).fadeOut('slow');
37-
api.spinner.progress.stop();
36+
if (api.spinner.progress.instance) {
37+
// End the progress bar
38+
api.spinner.progress.stop();
39+
40+
// Close the spinner after 1 second to show 100% in the progress bar
41+
setTimeout(function () {
42+
$(C_API_SELECTOR_SPINNER).fadeOut('slow');
43+
}, 1000);
44+
}
45+
else {
46+
// Close the spinner immediatelly
47+
$(C_API_SELECTOR_SPINNER).fadeOut('slow');
48+
}
3849
}
3950
};
4051

@@ -43,8 +54,17 @@ api.spinner.stop = function () {
4354
*/
4455
api.spinner.progress.start = function (progressTimeout) {
4556
if (progressTimeout) {
46-
api.spinner.progress.stop();
57+
clearTimeout(api.spinner.progress.instance);
58+
59+
// Set progress timeout
4760
api.spinner.progress.timeout = progressTimeout;
61+
62+
// Set progress to 0%
63+
$(C_API_SELECTOR_SPINNER + " .progress").fadeOut('slow');
64+
$(C_API_SELECTOR_SPINNER + " .progress").find("[name=bar]").css('width', '0%').attr('aria-valuenow', 0);
65+
$(C_API_SELECTOR_SPINNER + " .progress").find("[name=percentage]").text("0%");
66+
67+
// Initiate the progress by setting the timeout
4868
api.spinner.progress.setTimeout();
4969
}
5070
};
@@ -54,9 +74,11 @@ api.spinner.progress.start = function (progressTimeout) {
5474
*/
5575
api.spinner.progress.stop = function () {
5676
clearTimeout(api.spinner.progress.instance);
77+
78+
// Set progress to 100%
5779
$(C_API_SELECTOR_SPINNER + " .progress").fadeOut('slow');
58-
$(C_API_SELECTOR_SPINNER + " .progress").find("[name=bar]").css('width', '0%').attr('aria-valuenow', 0);
59-
$(C_API_SELECTOR_SPINNER + " .progress").find("[name=percentage]").text("0%");
80+
$(C_API_SELECTOR_SPINNER + " .progress").find("[name=bar]").css('width', '100%').attr('aria-valuenow', 100);
81+
$(C_API_SELECTOR_SPINNER + " .progress").find("[name=percentage]").text("100%");
6082
};
6183

6284
/**

0 commit comments

Comments
 (0)