Rev 1283 | Blame | Compare with Previous | Last modification | View Log | RSS feed
<%@ page import="pt.estgp.estgweb.web.filters.TopImageFilter" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" type="text/css" href="<%=request.getContextPath()%>/yui/build/menu/assets/skins/sam/menu.css" />
<link rel="stylesheet" type="text/css" href="<%=request.getContextPath()%>/yui/build/button/assets/skins/sam/button.css" />
<link rel="stylesheet" type="text/css" href="<%=request.getContextPath()%>/yui/build/fonts/fonts-min.css" />
<link rel="stylesheet" type="text/css" href="<%=request.getContextPath()%>/yui/build/container/assets/skins/sam/container.css" />
<link rel="stylesheet" type="text/css" href="<%=request.getContextPath()%>/yui/build/editor/assets/skins/sam/editor.css" />
<!--OFF CANVAS É PARA METER O BODY ABAIXO DO MENU DESLIZANTE DE TOPO-->
<!--<link type="text/css" rel="stylesheet" href="<%=request.getContextPath()%>/css/offcanvas.css"/>-->
<link type="text/css" rel="stylesheet" href="<%=request.getContextPath()%>/css/style.css"/>
<script type="text/javascript" src="<%=request.getContextPath()%>/js/functions.js"></script>
<script type="text/javascript" src="<%=request.getContextPath()%>/js/ajax.js"></script>
<script type="text/javascript" src="<%=request.getContextPath()%>/js/compactedPopup.js"></script>
<!--
<style>
body
{
background: url('http://www.ist.utl.pt/img/page/cubes.png')
}
</style>-->
<!--
<link type="text/css" rel="stylesheet" href="<%=request.getContextPath()%>/js/jquery/style.css"/>
<script type="text/javascript" src="<%=request.getContextPath()%>/js/jquery-latest.js"></script>
<script type="text/javascript" src="<%=request.getContextPath()%>/js/jquery.tablesorter.js"></script>
-->
<%
String link = (String) request.getAttribute(TopImageFilter.TOP_CSS);
if (link != null)
{
%>
<link type="text/css" rel="stylesheet" href="<%=link%>"/>
<%
}
%>
<script type="text/javascript" language="JavaScript">
var cal = new CalendarPopup();
/* //TABLE SORTER
$(document).ready(function()
{
$("#myTable").tablesorter();
}
);*/
</script>
<script type="text/javascript" src="<%=request.getContextPath()%>/js/jquerytables/jquery-2.1.4.min.js"></script>
<script type="text/javascript" src="<%=request.getContextPath()%>/js/jquerytables/jquery.tablesorter.min.js"></script>
<script type="text/javascript" src="<%=request.getContextPath()%>/js/jquerytables/jquery.tablesorter.widgets.js"></script>
<script type="text/javascript" src="<%=request.getContextPath()%>/js/jquerytables/bootstrap/js/bootstrap.js"></script>
<link rel="stylesheet" href="<%=request.getContextPath()%>/js/jquerytables/bootstrap/css/bootstrap.css" type="text/css"/>
<!--<link rel="stylesheet" href="<%=request.getContextPath()%>/js/jquerytables/bootstrap/css/bootstrap-theme.css" type="text/css"/>-->
<link rel="stylesheet" href="<%=request.getContextPath()%>/js/jquerytables/jquerytable/theme.estg.css" type="text/css"/>
<link rel="stylesheet" href="<%=request.getContextPath()%>/js/jquerytables/jquerytable/filter.formatter.css" type="text/css"/>
<link type="text/css" rel="stylesheet" href="<%=request.getContextPath()%>/css/variables.less"/>
<link type="text/css" rel="stylesheet" href="<%=request.getContextPath()%>/css/lavish-bootstrap.css"/>
<script type="text/javascript" language="JavaScript">
var cal = new CalendarPopup();
/*
//TABLE SORTER
$(document).ready(function()
{
$("#myTable").tablesorter();
}
);
*/
function isBreakpoint( alias ) {
return $('.device-' + alias).is(':visible');
}
$(document).ready(
function(){
$("#network").hide();
$("#network2").hide();
$("#network").mouseleave(
function(){
$("#network").animate({
height: 'hide'
});
}
);
$("#network2").mouseleave(
function(){
$("#network2").animate({
height: 'hide'
});
}
);
}
);
function openNetwork(){
$("#network2").animate({
height: 'hide'
});
$("#network").animate({
height: 'toggle'
});
}
function openNetwork2(){
$("#network").animate({
height: 'hide'
});
$("#network2").animate({
height: 'toggle'
});
}
</script>
<script language="javascript">
function ping()
{
$.ajax({
url: "<%=request.getContextPath()%>/ping.jsp",
type: "POST",
dataType: "json",
success: function(resposta) {
setTimeout("ping()",10000);
},
error: function() {
setTimeout("ping()",10000);
}
});
}
$(document).ready(function()
{
if($("#myTable"))
{
$("#myTable").tablesorter({
theme: 'blue',
sortMultiSortKey: 'altKey',
//sortList: [[0,0]],
widgets: ["zebra","filter"],
ignoreCase: false,
widthFixed : true,
widgetOptions : {filter_reset : 'button.reset',filter_columnFilters : true},
textExtraction: function(node) {
// extract data from markup and return it
if($(node).find(':input').size()>0)
{
var values = $(node).find(":input").map(function() {
return $(this).val()
}).get().join(",");
return values;
}
return $(node).text();
},
widgetOptions : {
filter_excludeFilter : {
// target a column by class name or column index (zero-based)
'.filter-false' : 'range'
}
}
/* ,
widgetOptions : {
// filter_anyMatch options was removed in v2.15; it has been replaced by the filter_external option
// If there are child rows in the table (rows with class name from "cssChildRow" option)
// and this option is true and a match is found anywhere in the child row, then it will make that row
// visible; default is false
filter_childRows : false,
// if true, filter child row content by column; filter_childRows must also be true
filter_childByColumn : false,
// if true, a filter will be added to the top of each table column;
// disabled by using -> headers: { 1: { filter: false } } OR add class="filter-false"
// if you set this to false, make sure you perform a search using the second method below
filter_columnFilters : true,
// if true, allows using "#:{query}" in AnyMatch searches (column:query; added v2.20.0)
filter_columnAnyMatch: true,
// extra css class name (string or array) added to the filter element (input or select)
filter_cellFilter : '',
// extra css class name(s) applied to the table row containing the filters & the inputs within that row
// this option can either be a string (class applied to all filters) or an array (class applied to indexed filter)
filter_cssFilter : '', // or []
// add a default column filter type "~{query}" to make fuzzy searches default;
// "{q1} AND {q2}" to make all searches use a logical AND.
filter_defaultFilter : {},
// filters to exclude, per column
filter_excludeFilter : {},
// jQuery selector (or object) pointing to an input to be used to match the contents of any column
// please refer to the filter-any-match demo for limitations - new in v2.15
filter_external : '',
// class added to filtered rows (rows that are not showing); needed by pager plugin
filter_filteredRow : 'filtered',
// add custom filter elements to the filter row
// see the filter formatter demos for more specifics
filter_formatter : null,
// add custom filter functions using this option
// see the filter widget custom demo for more specifics on how to use this option
filter_functions : null,
// hide filter row when table is empty
filter_hideEmpty : true,
// if true, filters are collapsed initially, but can be revealed by hovering over the grey bar immediately
// below the header row. Additionally, tabbing through the document will open the filter row when an input gets focus
filter_hideFilters : true,
// Set this option to false to make the searches case sensitive
filter_ignoreCase : true,
// if true, search column content while the user types (with a delay)
filter_liveSearch : true,
// a header with a select dropdown & this class name will only show available (visible) options within that drop down.
// default placeholder text (overridden by any header "data-placeholder" setting)
filter_placeholder : { search : '', select : '' },
// jQuery selector string of an element used to reset the filters
filter_reset : 'button.reset',
// Use the $.tablesorter.storage utility to save the most recent filters (default setting is false)
filter_saveFilters : true,
// Delay in milliseconds before the filter widget starts searching; This option prevents searching for
// every character while typing and should make searching large tables faster.
filter_searchDelay : 300,
// allow searching through already filtered rows in special circumstances; will speed up searching in large tables if true
filter_searchFiltered: true,
// include a function to return an array of values to be added to the column filter select
filter_selectSource : null,
// if true, server-side filtering should be performed because client-side filtering will be disabled, but
// the ui and events will still be used.
filter_serversideFiltering : false,
// Set this option to true to use the filter to find text from the start of the column
// So typing in "a" will find "albert" but not "frank", both have a's; default is false
filter_startsWith : false,
// Filter using parsed content for ALL columns
// be careful on using this on date columns as the date is parsed and stored as time in seconds
filter_useParsedData : false,
// data attribute in the header cell that contains the default filter value
filter_defaultAttrib : 'data-value',
// filter_selectSource array text left of the separator is added to the option value, right into the option text
filter_selectSourceSeparator : '|'
}*/
}
);
}
if($("#myTable2"))
{
$("#myTable2").tablesorter({
theme: 'blue',
sortMultiSortKey: 'altKey',
//sortList: [[0,0]],
widgets: ["zebra","filter"],
ignoreCase: false,
widthFixed : true,
widgetOptions : {filter_reset : 'button.reset',filter_columnFilters : true,
filter_excludeFilter : {
// target a column by class name or column index (zero-based)
'.filter-false' : 'range'
}},
textExtraction: function(node) {
// extract data from markup and return it
if($(node).find(':input').size()>0)
{
var values = $(node).find(":input").map(function() {
return $(this).val()
}).get().join(",");
return values;
}
return $(node).text();
}
}
);
}
if($(".tablesortersimple"))
{
$(".tablesortersimple").tablesorter({
theme: 'blue',
sortMultiSortKey: 'altKey',
//sortList: [[0,0]],
widgets: ["zebra","filter"],
ignoreCase: false,
widthFixed : true,
widgetOptions : {filter_reset : 'button.reset',filter_columnFilters : true,
filter_excludeFilter : {
// target a column by class name or column index (zero-based)
'.filter-false' : 'range'
}
},
textExtraction: function(node) {
// extract data from markup and return it
if($(node).find(':input').size()>0)
{
var values = $(node).find(":input").map(function() {
return $(this).val()
}).get().join(",");
return values;
}
return $(node).text();
}
}
);
}
/*
if($(".tablesorterfiltered"))
{
$(".tablesorterfiltered").tablesorter({
theme: 'blue',
sortMultiSortKey: 'altKey',
//sortList: [[0,0]],
widgets: ["zebra","filter"],
ignoreCase: false,
widthFixed : true,
widgetOptions : {filter_reset : 'button.reset',filter_columnFilters : true},
textExtraction: function(node) {
// extract data from markup and return it
if($(node).find(':input').size()>0)
{
var values = $(node).find(":input").map(function() {
return $(this).val()
}).get().join(",");
return values;
}
return $(node).text();
}
}
);
}*/
if($(".tablesorterfiltered"))
{
$(".tablesorterfiltered").tablesorter({
theme: 'blue',
sortMultiSortKey: 'altKey',
//sortList: [[0,0]],
widgets: ["zebra","filter"],
ignoreCase: false,
widthFixed : true,
widgetOptions : {filter_reset : 'button.reset',filter_columnFilters : true,
filter_excludeFilter : {
// target a column by class name or column index (zero-based)
'.filter-false' : 'range'
}
},
textExtraction: function(node) {
// extract data from markup and return it
if($(node).find(':input').size()>0)
{
var values = $(node).find(":input").map(function() {
return $(this).val()
}).get().join(",");
return values;
}
return $(node).text();
}
}
);
}
// External search
// buttons set up like this:
// <button type="button" data-filter-column="4" data-filter-text="2?%">Saved Search</button>
$('button[data-filter-column]').click(function(){
/*** first method *** data-filter-column="1" data-filter-text="!son"
add search value to Discount column (zero based index) input */
var filters = [],
$t = $(this),
col = $t.data('filter-column'), // zero-based index
txt = $t.data('filter-text') || $t.text(); // text to add to filter
filters[col] = txt;
// using "table.hasFilters" here to make sure we aren't targeting a sticky header
if($('#myTable'))
$.tablesorter.setFilters( $('#myTable'), filters, true ); // new v2.9
if($('#myTable2'))
$.tablesorter.setFilters( $('#myTable2'), filters, true ); // new v2.9
if($('.tablesorterfiltered'))
$.tablesorter.setFilters( $('.tablesorterfiltered'), filters, true ); // new v2.9
/*
if($('.tablesorterfiltered'))
$.tablesorter.setFilters( $('.tablesorterfiltered'), filters, true ); // new v2.9
*/
/** old method (prior to tablsorter v2.9 ***
var filters = $('table.tablesorter').find('input.tablesorter-filter');
filters.val(''); // clear all filters
filters.eq(col).val(txt).trigger('search', false);
******/
/*** second method ***
this method bypasses the filter inputs, so the "filter_columnFilters"
option can be set to false (no column filters showing)
******/
/*
var columns = [];
columns[5] = '2?%'; // or define the array this way [ '', '', '', '', '', '2?%' ]
$('table').trigger('search', [ columns ]);
*/
return false;
});
}
);
</script>
<style>
th.headerSortUp {
background-image: url(<%=request.getContextPath()%>/js/jquerytables/jquerytable/asc.gif);
background-color: #3399FF;
}
th.headerSortDown {
background-image: url(<%=request.getContextPath()%>/js/jquerytables/jquerytable/desc.gif);
background-color: #3399FF;
}
.dorsalActivado span, .dorsal span
{
text-align: center;
background-color: white;
padding: 3px;
border: 1px solid black;
font-weight: bold;
white-space: nowrap;
}
.tablesorterfiltered thead .disabled {display: none}
</style>
Generated by GNU Enscript 1.6.5.2.