Skip to content

Commit 283d8da

Browse files
committed
Added ajax loaders on search and press on download file.
1 parent 75072d4 commit 283d8da

File tree

5 files changed

+76
-36
lines changed

5 files changed

+76
-36
lines changed

css/os2web_cp_service.css

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,3 +46,11 @@
4646
th.views-field-field-os2web-cp-service-date {
4747
white-space: nowrap;
4848
}
49+
.os2web_cp_service-ajax-loader {
50+
background: url(../images/loading.gif) no-repeat;
51+
width: 20px;
52+
height: 20px;
53+
display: none;
54+
vertical-align: bottom;
55+
margin: 5px;
56+
}

images/loading.gif

4.36 KB
Loading

js/os2web_cp_service.js

Lines changed: 58 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -4,44 +4,67 @@
44
*/
55

66
(function ($) {
7-
$(document).ready(function() {
8-
// Convert all nonalphanumeric chars to /.
9-
$('#views-exposed-form-os2web-cp-service-cp-case-search-panel-pane-1').submit(function() {
10-
// IE fix. Value and placeolder is the same on IE.
11-
if($('#edit-case-id').attr('placeholder') !== $('#edit-case-id').val()) {
12-
var value = $('#edit-case-id').val();
13-
$('#edit-case-id').val(value.replace(/\W/g, '/'));
14-
}
7+
$(document).ready(function() {
8+
// Convert all nonalphanumeric chars to /.
9+
$('#views-exposed-form-os2web-cp-service-cp-case-search-panel-pane-1').live('submit',function(e) {
10+
// Prevent double submissions.
11+
var $form = $(this);
1512

16-
// Reset dates if case id is entered.
17-
if($('#edit-case-id').val() || /^\d{2}\/\d/.test($('#edit-search-text').val())) {
18-
$('#edit-field-os2web-cp-service-date-from-value-datepicker-popup-0').val('');
19-
$('#edit-field-os2web-cp-service-date-to-value-datepicker-popup-0').val('');
20-
}
21-
});
13+
if ($form.data('submitted') === true) {
14+
// Previously submitted - don't submit again
15+
e.preventDefault();
16+
} else {
17+
// Mark it so that the next submit can be ignored
18+
$form.data('submitted', true);
19+
$form.find('button[type=submit], input[type=submit]').attr('disabled',true);
20+
}
2221

23-
$( "a.qtip-this[title]" ).qtip({
24-
style: {
25-
padding: 1,
26-
background: "#FFF",
27-
color: "black",
28-
textAlign: "center",
29-
border: {
30-
width: 1,
31-
radius: 2,
32-
color: "#DDD"
33-
},
34-
tip: "leftMiddle"
35-
},
36-
position: {
37-
corner: {
38-
target: "rightMiddle",
39-
tooltip: "leftMiddle"
40-
},
41-
adjust: {
42-
x : 10
22+
// IE fix. Value and placeolder is the same on IE.
23+
if($('#edit-case-id').attr('placeholder') !== $('#edit-case-id').val()) {
24+
var value = $('#edit-case-id').val();
25+
$('#edit-case-id').val(value.replace(/\W/g, '/'));
4326
}
27+
28+
// Reset dates if case id is entered.
29+
if($('#edit-case-id').val() || /^\d{2}\/\d/.test($('#edit-search-text').val())) {
30+
$('#edit-field-os2web-cp-service-date-from-value-datepicker-popup-0').val('');
31+
$('#edit-field-os2web-cp-service-date-to-value-datepicker-popup-0').val('');
32+
}
33+
});
34+
35+
$('#views-exposed-form-os2web-cp-service-cp-case-search-panel-pane-1 .form-submit').click(function(e){
36+
$('.os2web_cp_service-ajax-loader').css('display', 'inline-block');
37+
});
38+
39+
$('.views-field-field-os2web-cp-service-file-id a').click(function(e){
40+
// Find the ajax loader in next td in table.
41+
$(this).parent().parent().find('.os2web_cp_service-ajax-loader').css('display', 'inline-block');
42+
});
43+
44+
if(typeof $( "a.qtip-this[title]" ).qtip === 'function') {
45+
$("a.qtip-this[title]").qtip({
46+
style: {
47+
padding: 1,
48+
background: "#FFF",
49+
color: "black",
50+
textAlign: "center",
51+
border: {
52+
width: 1,
53+
radius: 2,
54+
color: "#DDD"
55+
},
56+
tip: "leftMiddle"
57+
},
58+
position: {
59+
corner: {
60+
target: "rightMiddle",
61+
tooltip: "leftMiddle"
62+
},
63+
adjust: {
64+
x : 10
65+
}
66+
}
67+
});
4468
}
4569
});
46-
});
4770
})(jQuery);

os2web_cp_service.module

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -790,7 +790,7 @@ function os2web_cp_service_preprocess_views_exposed_form(&$variables) {
790790
break;
791791

792792
case 'filter-field_os2web_cp_service_date_value_2':
793-
$widget->suffix = '<input type="submit" name="" value="Søg" class="form-submit"></div>';
793+
$widget->suffix = '<input type="submit" name="" value="Søg" class="form-submit"><div class="os2web_cp_service-ajax-loader ajax-loader"></div></div>';
794794
break;
795795

796796
case 'filter-field_os2web_cp_service_case_id_value':

os2web_cp_service.views_default.inc

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -658,6 +658,14 @@ return TRUE; // If no exposed inputs, remove all results
658658
'multiple_from' => '',
659659
'multiple_to' => '',
660660
);
661+
/* Felt: Ajax Loader */
662+
$handler->display->display_options['fields']['nothing']['id'] = 'nothing';
663+
$handler->display->display_options['fields']['nothing']['table'] = 'views';
664+
$handler->display->display_options['fields']['nothing']['field'] = 'nothing';
665+
$handler->display->display_options['fields']['nothing']['ui_name'] = 'Ajax Loader';
666+
$handler->display->display_options['fields']['nothing']['label'] = '';
667+
$handler->display->display_options['fields']['nothing']['alter']['text'] = '<div class="os2web_cp_service-ajax-loader ajax-loader" style="display:none;"></div>';
668+
$handler->display->display_options['fields']['nothing']['element_label_colon'] = FALSE;
661669
$handler->display->display_options['defaults']['sorts'] = FALSE;
662670
/* Sorteringskriterie: Indhold: Dokumentdato (field_os2web_cp_service_date) */
663671
$handler->display->display_options['sorts']['field_os2web_cp_service_date_value']['id'] = 'field_os2web_cp_service_date_value';
@@ -844,6 +852,7 @@ Se alle sager på denne addresse
844852
t('[title]'),
845853
t('Dokumentnummer'),
846854
t('Dato'),
855+
t('<div class="os2web_cp_service-ajax-loader ajax-loader" style="display:none;"></div>'),
847856
t('Page'),
848857
t('<h2>Sags Nr.: [field_os2web_cp_service_case_id]</h2>'),
849858
t('[title] <br>[nothing]'),

0 commit comments

Comments
 (0)