Pierre-luc.pilon

Joined 1 October 2018
4,635 bytes added ,  11:37, 2 October 2018
no edit summary
Line 406: Line 406:  
| GCcollab |<nowiki> Twitter | Email</nowiki>
 
| GCcollab |<nowiki> Twitter | Email</nowiki>
 
|}
 
|}
 +
 +
      <script>
 +
        function myFunction() {
 +
        var input, filter, table, tr, td, i;
 +
        input = document.getElementById("myInput");
 +
        filter = input.value.toUpperCase();
 +
        table = document.getElementById("myTable");
 +
        tr = table.getElementsByTagName("tr");
 +
        for (i = 0; i < tr.length; i++) {
 +
          td = tr[i].getElementsByTagName("td")[2];
 +
          if (td) {
 +
            if (td.innerHTML.toUpperCase().indexOf(filter) > -1) {
 +
              tr[i].style.display = "";
 +
            } else {
 +
              tr[i].style.display = "none";
 +
            }
 +
          }     
 +
        }
 +
        }
 +
       
 +
        function sortTable() {
 +
        var TableLastSortedColumn = -1;
 +
       
 +
        var sortColumn = parseInt(arguments[0]);
 +
        var type = arguments.length > 1 ? arguments[1] : 'T';
 +
        var dateformat = arguments.length > 2 ? arguments[2] : '';
 +
        var table = document.getElementById("myTable");
 +
        var tbody = table.getElementsByTagName("tbody")[0];
 +
        var rows = tbody.getElementsByTagName("tr");
 +
        var arrayOfRows = new Array();
 +
        type = type.toUpperCase();
 +
        dateformat = dateformat.toLowerCase();
 +
        for(var i=0, len=rows.length; i<len; i++) {
 +
        arrayOfRows[i] = new Object;
 +
        arrayOfRows[i].oldIndex = i;
 +
        var celltext = rows[i].getElementsByTagName("td")[sortColumn].innerHTML.replace(/<[^>]*>/g,"");
 +
        if( type=='D' ) { arrayOfRows[i].value = GetDateSortingKey(dateformat,celltext); }
 +
        else {
 +
        var re = type=="N" ? /[^\.\-\+\d]/g : /[^a-zA-Z0-9]/g;
 +
        arrayOfRows[i].value = celltext.replace(re,"").substr(0,25).toLowerCase();
 +
        }
 +
        }
 +
        if (sortColumn == TableLastSortedColumn) { arrayOfRows.reverse(); }
 +
        else {
 +
        TableLastSortedColumn = sortColumn;
 +
        switch(type) {
 +
        case "N" : arrayOfRows.sort(CompareRowOfNumbers); break;
 +
        case "D" : arrayOfRows.sort(CompareRowOfNumbers); break;
 +
        default  : arrayOfRows.sort(CompareRowOfText);
 +
        }
 +
        }
 +
        var newTableBody = document.createElement("tbody");
 +
        for(var i=0, len=arrayOfRows.length; i<len; i++) {
 +
        newTableBody.appendChild(rows[arrayOfRows[i].oldIndex].cloneNode(true));
 +
        }
 +
        table.replaceChild(newTableBody,tbody);
 +
        } // function SortTable()
 +
       
 +
        function CompareRowOfText(a,b) {
 +
        var aval = a.value;
 +
        var bval = b.value;
 +
        return( aval == bval ? 0 : (aval > bval ? 1 : -1) );
 +
        } // function CompareRowOfText()
 +
       
 +
        function CompareRowOfNumbers(a,b) {
 +
        var aval = /\d/.test(a.value) ? parseFloat(a.value) : 0;
 +
        var bval = /\d/.test(b.value) ? parseFloat(b.value) : 0;
 +
        return( aval == bval ? 0 : (aval > bval ? 1 : -1) );
 +
        } // function CompareRowOfNumbers()
 +
       
 +
        function GetDateSortingKey(format,text) {
 +
        if( format.length < 1 ) { return ""; }
 +
        format = format.toLowerCase();
 +
        text = text.toLowerCase();
 +
        text = text.replace(/^[^a-z0-9]*/,"");
 +
        text = text.replace(/[^a-z0-9]*$/,"");
 +
        if( text.length < 1 ) { return ""; }
 +
        text = text.replace(/[^a-z0-9]+/g,",");
 +
        var date = text.split(",");
 +
        if( date.length < 3 ) { return ""; }
 +
        var d=0, m=0, y=0;
 +
        for( var i=0; i<3; i++ ) {
 +
        var ts = format.substr(i,1);
 +
        if( ts == "d" ) { d = date[i]; }
 +
        else if( ts == "m" ) { m = date[i]; }
 +
        else if( ts == "y" ) { y = date[i]; }
 +
        }
 +
        d = d.replace(/^0/,"");
 +
        if( d < 10 ) { d = "0" + d; }
 +
        if( /[a-z]/.test(m) ) {
 +
        m = m.substr(0,3);
 +
        switch(m) {
 +
        case "jan" : m = String(1); break;
 +
        case "feb" : m = String(2); break;
 +
        case "mar" : m = String(3); break;
 +
        case "apr" : m = String(4); break;
 +
        case "may" : m = String(5); break;
 +
        case "jun" : m = String(6); break;
 +
        case "jul" : m = String(7); break;
 +
        case "aug" : m = String(8); break;
 +
        case "sep" : m = String(9); break;
 +
        case "oct" : m = String(10); break;
 +
        case "nov" : m = String(11); break;
 +
        case "dec" : m = String(12); break;
 +
        default    : m = String(0);
 +
        }
 +
        }
 +
        m = m.replace(/^0/,"");
 +
        if( m < 10 ) { m = "0" + m; }
 +
        y = parseInt(y);
 +
        if( y < 100 ) { y = parseInt(y) + 2000; }
 +
        return "" + String(y) + "" + String(m) + "" + String(d) + "";
 +
        } // function GetDateSortingKey()
 +
      </script>