Subversion Repositories bacoAlunos

Rev

Rev 1310 | Rev 1379 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1310 Rev 1312
Line 1... Line 1...
1
<%@ page import="pt.estgp.estgweb.web.filters.TopImageFilter" %>
1
<%@ page import="pt.estgp.estgweb.web.filters.TopImageFilter" %>
2
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
2
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
3
 
-
 
4
<meta name="viewport" content="width=device-width, initial-scale=1">
-
 
5
 
-
 
6
<link rel="stylesheet" type="text/css" href="<%=request.getContextPath()%>/yui/build/menu/assets/skins/sam/menu.css" />
-
 
7
<link rel="stylesheet" type="text/css" href="<%=request.getContextPath()%>/yui/build/button/assets/skins/sam/button.css" />
-
 
8
<link rel="stylesheet" type="text/css" href="<%=request.getContextPath()%>/yui/build/fonts/fonts-min.css" />
-
 
9
<link rel="stylesheet" type="text/css" href="<%=request.getContextPath()%>/yui/build/container/assets/skins/sam/container.css" />
-
 
10
<link rel="stylesheet" type="text/css" href="<%=request.getContextPath()%>/yui/build/editor/assets/skins/sam/editor.css" />
-
 
11
 
-
 
12
<!--OFF CANVAS É PARA METER O BODY ABAIXO DO MENU DESLIZANTE DE TOPO-->
-
 
13
<!--<link type="text/css" rel="stylesheet" href="<%=request.getContextPath()%>/css/offcanvas.css"/>-->
-
 
14
<link type="text/css" rel="stylesheet" href="<%=request.getContextPath()%>/css/style.css"/>
-
 
15
<script type="text/javascript" src="<%=request.getContextPath()%>/js/functions.js"></script>
-
 
16
<script type="text/javascript" src="<%=request.getContextPath()%>/js/ajax.js"></script>
-
 
17
<script type="text/javascript" src="<%=request.getContextPath()%>/js/compactedPopup.js"></script>
-
 
18
<!--
-
 
19
<style>
-
 
20
    body
-
 
21
    {
-
 
22
        background: url('http://www.ist.utl.pt/img/page/cubes.png')
-
 
23
    }
-
 
24
</style>-->
-
 
25
<!--
-
 
26
<link type="text/css" rel="stylesheet" href="<%=request.getContextPath()%>/js/jquery/style.css"/>
-
 
27
<script type="text/javascript" src="<%=request.getContextPath()%>/js/jquery-latest.js"></script>
-
 
28
<script type="text/javascript" src="<%=request.getContextPath()%>/js/jquery.tablesorter.js"></script>
-
 
29
-->
-
 
30
 
-
 
31
<%
-
 
32
        String link = (String) request.getAttribute(TopImageFilter.TOP_CSS);
-
 
33
        if (link != null)
-
 
34
        {
-
 
35
    %>
-
 
36
    <link type="text/css" rel="stylesheet" href="<%=link%>"/>
-
 
37
    <%
-
 
38
        }
-
 
39
    %>
-
 
40
 
-
 
41
<script type="text/javascript" language="JavaScript">
-
 
42
    var cal = new CalendarPopup();
-
 
43
 
-
 
44
   /* //TABLE SORTER
-
 
45
    $(document).ready(function()
-
 
46
        {
-
 
47
            $("#myTable").tablesorter();
-
 
48
 
-
 
49
        }
-
 
50
    );*/
-
 
51
 
-
 
52
</script>
-
 
53
 
-
 
54
 
-
 
55
 
-
 
56
<script type="text/javascript" src="<%=request.getContextPath()%>/js/jquerytables/jquery-2.1.4.min.js"></script>
-
 
57
<script type="text/javascript" src="<%=request.getContextPath()%>/js/jquerytables/jquery.tablesorter.min.js"></script>
-
 
58
<script type="text/javascript" src="<%=request.getContextPath()%>/js/jquerytables/jquery.tablesorter.widgets.js"></script>
-
 
59
<script type="text/javascript" src="<%=request.getContextPath()%>/js/jquerytables/bootstrap/js/bootstrap.js"></script>
-
 
60
<link rel="stylesheet" href="<%=request.getContextPath()%>/js/jquerytables/bootstrap/css/bootstrap.css" type="text/css"/>
-
 
61
<!--<link rel="stylesheet" href="<%=request.getContextPath()%>/js/jquerytables/bootstrap/css/bootstrap-theme.css" type="text/css"/>-->
-
 
62
<link rel="stylesheet" href="<%=request.getContextPath()%>/js/jquerytables/jquerytable/theme.estg.css" type="text/css"/>
-
 
63
<link rel="stylesheet" href="<%=request.getContextPath()%>/js/jquerytables/jquerytable/filter.formatter.css" type="text/css"/>
-
 
64
<link type="text/css" rel="stylesheet" href="<%=request.getContextPath()%>/css/variables.less"/>
-
 
65
<link type="text/css" rel="stylesheet" href="<%=request.getContextPath()%>/css/lavish-bootstrap.css"/>
-
 
66
 
-
 
67
 
-
 
68
<script type="text/javascript" language="JavaScript">
-
 
69
    var cal = new CalendarPopup();
-
 
70
 
-
 
71
    /*
-
 
72
    //TABLE SORTER
-
 
73
    $(document).ready(function()
-
 
74
            {
-
 
75
                $("#myTable").tablesorter();
-
 
76
 
-
 
77
            }
-
 
78
    );
-
 
79
*/
-
 
80
 
-
 
81
    function isBreakpoint( alias ) {
-
 
82
        return $('.device-' + alias).is(':visible');
-
 
83
    }
-
 
84
 
-
 
85
 
-
 
86
 
-
 
87
 
-
 
88
 
-
 
89
    $(document).ready(
-
 
90
            function(){
-
 
91
                $("#network").hide();
-
 
92
                $("#network2").hide();
-
 
93
                $("#network").mouseleave(
-
 
94
                        function(){
-
 
95
                            $("#network").animate({
-
 
96
                                height: 'hide'
-
 
97
                            });
-
 
98
                        }
-
 
99
 
-
 
100
                );
-
 
101
                $("#network2").mouseleave(
-
 
102
                        function(){
-
 
103
                            $("#network2").animate({
-
 
104
                                height: 'hide'
-
 
105
                            });
-
 
106
                        }
-
 
107
 
-
 
108
                );
-
 
109
            }
-
 
110
    );
-
 
111
 
-
 
112
    function openNetwork(){
-
 
113
        $("#network2").animate({
-
 
114
            height: 'hide'
-
 
115
        });
-
 
116
        $("#network").animate({
-
 
117
            height: 'toggle'
-
 
118
        });
-
 
119
    }
-
 
120
 
-
 
121
    function openNetwork2(){
-
 
122
        $("#network").animate({
-
 
123
            height: 'hide'
-
 
124
        });
-
 
125
        $("#network2").animate({
-
 
126
            height: 'toggle'
-
 
127
        });
-
 
128
    }
-
 
129
 
-
 
130
</script>
-
 
131
<script language="javascript">
-
 
132
 
-
 
133
    function ping()
-
 
134
    {
-
 
135
        $.ajax({
-
 
136
            url: "<%=request.getContextPath()%>/ping.jsp",
-
 
137
            type: "POST",
-
 
138
            dataType: "json",
-
 
139
            success: function(resposta) {
-
 
140
                setTimeout("ping()",10000);
-
 
141
            },
-
 
142
            error: function() {
-
 
143
                setTimeout("ping()",10000);
-
 
144
            }
-
 
145
        });
-
 
146
 
-
 
147
    }
-
 
148
    $(document).ready(function()
-
 
149
            {
-
 
150
                if($("#myTable"))
-
 
151
                {
-
 
152
                    $("#myTable").tablesorter({
-
 
153
                            theme: 'blue',
-
 
154
 
-
 
155
 
-
 
156
                            sortMultiSortKey: 'altKey',
-
 
157
                            //sortList: [[0,0]],
-
 
158
                            widgets: ["zebra","filter"],
-
 
159
 
-
 
160
                            ignoreCase: false,
-
 
161
                            widthFixed : true,
-
 
162
                            widgetOptions : {filter_reset : 'button.reset',filter_columnFilters : true},
-
 
163
                            textExtraction: function(node) {
-
 
164
                                    // extract data from markup and return it
-
 
165
                                    if($(node).find(':input').size()>0)
-
 
166
                                    {
-
 
167
                                        var values = $(node).find(":input").map(function() {
-
 
168
                                            return $(this).val()
-
 
169
                                        }).get().join(",");
-
 
170
 
-
 
171
 
-
 
172
                                        return values;
-
 
173
                                    }
-
 
174
                                    return $(node).text();
-
 
175
                            },
-
 
176
                            widgetOptions : {
-
 
177
 
-
 
178
                                filter_excludeFilter : {
-
 
179
                                    // target a column by class name or column index (zero-based)
-
 
180
                                    '.filter-false' : 'range'
-
 
181
                                }
-
 
182
 
-
 
183
                            }
-
 
184
 
-
 
185
                            /*        ,
-
 
186
 
-
 
187
                             widgetOptions : {
-
 
188
 
-
 
189
                             // filter_anyMatch options was removed in v2.15; it has been replaced by the filter_external option
-
 
190
 
-
 
191
                             // If there are child rows in the table (rows with class name from "cssChildRow" option)
-
 
192
                             // and this option is true and a match is found anywhere in the child row, then it will make that row
-
 
193
                             // visible; default is false
-
 
194
                             filter_childRows : false,
-
 
195
 
-
 
196
                             // if true, filter child row content by column; filter_childRows must also be true
-
 
197
                             filter_childByColumn : false,
-
 
198
 
-
 
199
                             // if true, a filter will be added to the top of each table column;
-
 
200
                             // disabled by using -> headers: { 1: { filter: false } } OR add class="filter-false"
-
 
201
                             // if you set this to false, make sure you perform a search using the second method below
-
 
202
                             filter_columnFilters : true,
-
 
203
 
-
 
204
                             // if true, allows using "#:{query}" in AnyMatch searches (column:query; added v2.20.0)
-
 
205
                             filter_columnAnyMatch: true,
-
 
206
 
-
 
207
                             // extra css class name (string or array) added to the filter element (input or select)
-
 
208
                             filter_cellFilter : '',
-
 
209
 
-
 
210
                             // extra css class name(s) applied to the table row containing the filters & the inputs within that row
-
 
211
                             // this option can either be a string (class applied to all filters) or an array (class applied to indexed filter)
-
 
212
                             filter_cssFilter : '', // or []
-
 
213
 
-
 
214
                             // add a default column filter type "~{query}" to make fuzzy searches default;
-
 
215
                             // "{q1} AND {q2}" to make all searches use a logical AND.
-
 
216
                             filter_defaultFilter : {},
-
 
217
 
-
 
218
                             // filters to exclude, per column
-
 
219
                             filter_excludeFilter : {},
-
 
220
 
-
 
221
                             // jQuery selector (or object) pointing to an input to be used to match the contents of any column
-
 
222
                             // please refer to the filter-any-match demo for limitations - new in v2.15
-
 
223
                             filter_external : '',
-
 
224
 
-
 
225
                             // class added to filtered rows (rows that are not showing); needed by pager plugin
-
 
226
                             filter_filteredRow : 'filtered',
-
 
227
 
-
 
228
                             // add custom filter elements to the filter row
-
 
229
                             // see the filter formatter demos for more specifics
-
 
230
                             filter_formatter : null,
-
 
231
 
-
 
232
                             // add custom filter functions using this option
-
 
233
                             // see the filter widget custom demo for more specifics on how to use this option
-
 
234
                             filter_functions : null,
-
 
235
 
-
 
236
                             // hide filter row when table is empty
-
 
237
                             filter_hideEmpty : true,
-
 
238
 
-
 
239
                             // if true, filters are collapsed initially, but can be revealed by hovering over the grey bar immediately
-
 
240
                             // below the header row. Additionally, tabbing through the document will open the filter row when an input gets focus
-
 
241
                             filter_hideFilters : true,
-
 
242
 
-
 
243
                             // Set this option to false to make the searches case sensitive
-
 
244
                             filter_ignoreCase : true,
-
 
245
 
-
 
246
                             // if true, search column content while the user types (with a delay)
-
 
247
                             filter_liveSearch : true,
-
 
248
 
-
 
249
                             // a header with a select dropdown & this class name will only show available (visible) options within that drop down.
-
 
250
 
-
 
251
 
-
 
252
                             // default placeholder text (overridden by any header "data-placeholder" setting)
-
 
253
                             filter_placeholder : { search : '', select : '' },
-
 
254
 
-
 
255
                             // jQuery selector string of an element used to reset the filters
-
 
256
                             filter_reset : 'button.reset',
-
 
257
 
-
 
258
                             // Use the $.tablesorter.storage utility to save the most recent filters (default setting is false)
-
 
259
                             filter_saveFilters : true,
-
 
260
 
-
 
261
                             // Delay in milliseconds before the filter widget starts searching; This option prevents searching for
-
 
262
                             // every character while typing and should make searching large tables faster.
-
 
263
                             filter_searchDelay : 300,
-
 
264
 
-
 
265
                             // allow searching through already filtered rows in special circumstances; will speed up searching in large tables if true
-
 
266
                             filter_searchFiltered: true,
-
 
267
 
-
 
268
                             // include a function to return an array of values to be added to the column filter select
-
 
269
                             filter_selectSource  : null,
-
 
270
 
-
 
271
                             // if true, server-side filtering should be performed because client-side filtering will be disabled, but
-
 
272
                             // the ui and events will still be used.
-
 
273
                             filter_serversideFiltering : false,
-
 
274
 
-
 
275
                             // Set this option to true to use the filter to find text from the start of the column
-
 
276
                             // So typing in "a" will find "albert" but not "frank", both have a's; default is false
-
 
277
                             filter_startsWith : false,
-
 
278
 
-
 
279
                             // Filter using parsed content for ALL columns
-
 
280
                             // be careful on using this on date columns as the date is parsed and stored as time in seconds
-
 
281
                             filter_useParsedData : false,
-
 
282
 
-
 
283
                             // data attribute in the header cell that contains the default filter value
-
 
284
                             filter_defaultAttrib : 'data-value',
-
 
285
 
-
 
286
                             // filter_selectSource array text left of the separator is added to the option value, right into the option text
-
 
287
                             filter_selectSourceSeparator : '|'
-
 
288
 
-
 
289
                             }*/
-
 
290
                        }
-
 
291
                    );
-
 
292
                }
-
 
293
 
-
 
294
                if($("#myTable2"))
-
 
295
                {
-
 
296
                    $("#myTable2").tablesorter({
-
 
297
                                theme: 'blue',
-
 
298
                                sortMultiSortKey: 'altKey',
-
 
299
                                //sortList: [[0,0]],
-
 
300
                                widgets: ["zebra","filter"],
-
 
301
                                ignoreCase: false,
-
 
302
                                widthFixed : true,
-
 
303
                                widgetOptions : {filter_reset : 'button.reset',filter_columnFilters : true,
-
 
304
                                    filter_excludeFilter : {
-
 
305
                                        // target a column by class name or column index (zero-based)
-
 
306
                                        '.filter-false' : 'range'
-
 
307
                                    }},
-
 
308
                                textExtraction: function(node) {
-
 
309
                                    // extract data from markup and return it
-
 
310
                                    if($(node).find(':input').size()>0)
-
 
311
                                    {
-
 
312
                                        var values = $(node).find(":input").map(function() {
-
 
313
                                            return $(this).val()
-
 
314
                                        }).get().join(",");
-
 
315
 
-
 
316
 
-
 
317
                                        return values;
-
 
318
                                    }
-
 
319
                                    return $(node).text();
-
 
320
                                }
-
 
321
                            }
-
 
322
                    );
-
 
323
                }
-
 
324
 
-
 
325
                if($(".tablesortersimple"))
-
 
326
                {
-
 
327
                    $(".tablesortersimple").tablesorter({
-
 
328
                                theme: 'blue',
-
 
329
                                sortMultiSortKey: 'altKey',
-
 
330
                                //sortList: [[0,0]],
-
 
331
                                widgets: ["zebra","filter"],
-
 
332
                                ignoreCase: false,
-
 
333
                                widthFixed : true,
-
 
334
                                widgetOptions : {filter_reset : 'button.reset',filter_columnFilters : true,
-
 
335
 
-
 
336
                                    filter_excludeFilter : {
-
 
337
                                        // target a column by class name or column index (zero-based)
-
 
338
                                        '.filter-false' : 'range'
-
 
339
                                    }
-
 
340
                                },
-
 
341
                                textExtraction: function(node) {
-
 
342
                                    // extract data from markup and return it
-
 
343
                                    if($(node).find(':input').size()>0)
-
 
344
                                    {
-
 
345
                                        var values = $(node).find(":input").map(function() {
-
 
346
                                            return $(this).val()
-
 
347
                                        }).get().join(",");
-
 
348
 
-
 
349
 
-
 
350
                                        return values;
-
 
351
                                    }
-
 
352
                                    return $(node).text();
-
 
353
                                }
-
 
354
                            }
-
 
355
                    );
-
 
356
                }
-
 
357
/*
-
 
358
                if($(".tablesorterfiltered"))
-
 
359
                {
-
 
360
                    $(".tablesorterfiltered").tablesorter({
-
 
361
                                theme: 'blue',
-
 
362
 
-
 
363
 
-
 
364
                                sortMultiSortKey: 'altKey',
-
 
365
                                //sortList: [[0,0]],
-
 
366
                                widgets: ["zebra","filter"],
-
 
367
 
-
 
368
                                ignoreCase: false,
-
 
369
                                widthFixed : true,
-
 
370
                                widgetOptions : {filter_reset : 'button.reset',filter_columnFilters : true},
-
 
371
                                textExtraction: function(node) {
-
 
372
                                    // extract data from markup and return it
-
 
373
                                    if($(node).find(':input').size()>0)
-
 
374
                                    {
-
 
375
                                        var values = $(node).find(":input").map(function() {
-
 
376
                                            return $(this).val()
-
 
377
                                        }).get().join(",");
-
 
378
 
-
 
379
 
-
 
380
                                        return values;
-
 
381
                                    }
-
 
382
                                    return $(node).text();
-
 
383
                                }
-
 
384
                            }
-
 
385
                    );
-
 
386
                }*/
-
 
387
                if($(".tablesorterfiltered"))
-
 
388
                {
-
 
389
                    $(".tablesorterfiltered").tablesorter({
-
 
390
                                theme: 'blue',
-
 
391
 
-
 
392
 
-
 
393
                                sortMultiSortKey: 'altKey',
-
 
394
                                //sortList: [[0,0]],
-
 
395
                                widgets: ["zebra","filter"],
-
 
396
 
-
 
397
                                ignoreCase: false,
-
 
398
                                widthFixed : true,
-
 
399
                                widgetOptions : {filter_reset : 'button.reset',filter_columnFilters : true,
-
 
400
 
-
 
401
                                    filter_excludeFilter : {
-
 
402
                                        // target a column by class name or column index (zero-based)
-
 
403
                                        '.filter-false' : 'range'
-
 
404
 
-
 
405
 
-
 
406
                                    }
-
 
407
                                },
-
 
408
                                textExtraction: function(node) {
-
 
409
                                    // extract data from markup and return it
-
 
410
                                    if($(node).find(':input').size()>0)
-
 
411
                                    {
-
 
412
                                        var values = $(node).find(":input").map(function() {
-
 
413
                                            return $(this).val()
-
 
414
                                        }).get().join(",");
-
 
415
 
-
 
416
 
-
 
417
                                        return values;
-
 
418
                                    }
-
 
419
                                    return $(node).text();
-
 
420
                                }
-
 
421
                            }
-
 
422
                    );
-
 
423
                }
-
 
424
 
-
 
425
 
-
 
426
 
-
 
427
                // External search
-
 
428
                // buttons set up like this:
-
 
429
                // <button type="button" data-filter-column="4" data-filter-text="2?%">Saved Search</button>
-
 
430
                $('button[data-filter-column]').click(function(){
-
 
431
                    /*** first method *** data-filter-column="1" data-filter-text="!son"
-
 
432
                     add search value to Discount column (zero based index) input */
-
 
433
                    var filters = [],
-
 
434
                            $t = $(this),
-
 
435
                            col = $t.data('filter-column'), // zero-based index
-
 
436
                            txt = $t.data('filter-text') || $t.text(); // text to add to filter
-
 
437
 
-
 
438
                    filters[col] = txt;
-
 
439
                    // using "table.hasFilters" here to make sure we aren't targeting a sticky header
-
 
440
                    if($('#myTable'))
-
 
441
                        $.tablesorter.setFilters( $('#myTable'), filters, true ); // new v2.9
-
 
442
                    if($('#myTable2'))
-
 
443
                        $.tablesorter.setFilters( $('#myTable2'), filters, true ); // new v2.9
-
 
444
                    if($('.tablesorterfiltered'))
-
 
445
                        $.tablesorter.setFilters( $('.tablesorterfiltered'), filters, true ); // new v2.9
-
 
446
 
-
 
447
                    /*
-
 
448
                    if($('.tablesorterfiltered'))
-
 
449
                        $.tablesorter.setFilters( $('.tablesorterfiltered'), filters, true ); // new v2.9
-
 
450
                     */
-
 
451
                    /** old method (prior to tablsorter v2.9 ***
-
 
452
                     var filters = $('table.tablesorter').find('input.tablesorter-filter');
-
 
453
                     filters.val(''); // clear all filters
-
 
454
                     filters.eq(col).val(txt).trigger('search', false);
-
 
455
                     ******/
-
 
456
 
-
 
457
                    /*** second method ***
-
 
458
                     this method bypasses the filter inputs, so the "filter_columnFilters"
-
 
459
                     option can be set to false (no column filters showing)
-
 
460
                     ******/
-
 
461
                    /*
-
 
462
                     var columns = [];
-
 
463
                     columns[5] = '2?%'; // or define the array this way [ '', '', '', '', '', '2?%' ]
-
 
464
                     $('table').trigger('search', [ columns ]);
-
 
465
                     */
-
 
466
 
-
 
467
                    return false;
-
 
468
                });
-
 
469
 
-
 
470
            }
-
 
471
 
-
 
472
 
-
 
473
    );
-
 
474
</script>
-
 
475
<style>
-
 
476
    th.headerSortUp {
-
 
477
        background-image: url(<%=request.getContextPath()%>/js/jquerytables/jquerytable/asc.gif);
-
 
478
        background-color: #3399FF;
-
 
479
    }
-
 
480
    th.headerSortDown {
-
 
481
        background-image: url(<%=request.getContextPath()%>/js/jquerytables/jquerytable/desc.gif);
-
 
482
        background-color: #3399FF;
-
 
483
    }
-
 
484
    .dorsalActivado span, .dorsal span
-
 
485
    {
-
 
486
        text-align: center;
-
 
487
        background-color: white;
-
 
488
        padding: 3px;
-
 
489
        border: 1px solid black;
-
 
490
        font-weight: bold;
-
 
491
        white-space: nowrap;
-
 
492
    }
-
 
493
 
-
 
494
    .tablesorterfiltered thead .disabled {display: none}
-
 
495
 
-
 
496
</style>
-
 
497
 
3
<jsp:include page="setTheme.jsp"/>
-
 
4
<jsp:include page="/layout/themes/${pt_estgp_estgweb_theme}/scripts.jsp"/>
-
 
5