$(document).ready(function() {
$('th').each(function(col) {
$(this).hover(
function() {
$(this).addClass('focus');
},
function() {
$(this).removeClass('focus');
}
);
$(this).click(function() {
if ($(this).is('.asc')) {
$(this).removeClass('asc');
$(this).addClass('desc selected');
sortOrder = -1;
} else {
$(this).addClass('asc selected');
$(this).removeClass('desc');
sortOrder = 1;
}
$(this).siblings().removeClass('asc selected');
$(this).siblings().removeClass('desc selected');
var arrData = $('table').find('tbody >tr:has(td)').get();
arrData.sort(function(a, b) {
var val1 = $(a).children('td').eq(col).text().toUpperCase();
var val2 = $(b).children('td').eq(col).text().toUpperCase();
if ($.isNumeric(val1) && $.isNumeric(val2))
return sortOrder == 1 ? val1 - val2 : val2 - val1;
else
return (val1 < val2) ? -sortOrder : (val1 > val2) ? sortOrder : 0;
});
$.each(arrData, function(index, row) {
$('tbody').append(row);
});
});
});
});
<?php
// Requires PHP 5.3+
// Found here: http://stackoverflow.com/a/1320156
function flatten_array(array $array) {
$flattened_array = array();
array_walk_recursive($array, function($a) use (&$flattened_array) { $flattened_array[] = $a; });
return $flattened_array;
}
<?php
function SortCzechChars($a, $b){
static $czechCharsS = array('Á', 'Č', 'Ď', 'É', 'Ě' , 'Ch' , 'Í', 'Ň', 'Ó', 'Ř', 'Š', 'Ť', 'Ú', 'Ů' , 'Ý', 'Ž', 'á', 'č', 'ď', 'é', 'ě' , 'ch' , 'í', 'ň', 'ó', 'ř', 'š', 'ť', 'ú', 'ů' , 'ý', 'ž');
static $czechCharsR = array('AZ','CZ','DZ','EZ','EZZ','HZZZ','IZ','NZ','OZ','RZ','SZ','TZ','UZ','UZZ','YZ','ZZ','az','cz','dz','ez','ezz','hzzz','iz','nz','oz','rz','sz','tz','uz','uzz','yz','zz');
$A = str_replace($czechCharsS, $czechCharsR, $a);
$B = str_replace($czechCharsS, $czechCharsR, $b);
return strnatcasecmp($A, $B);
}
/*
CapsLock.js
An object allowing the status of the caps lock key to be determined
Created by Stephen Morley - http://code.stephenmorley.org/ - and released under
the terms of the CC0 1.0 Universal legal code:
http://creativecommons.org/publicdomain/zero/1.0/legalcode
*/
// create the CapsLock object
var CapsLock = (function(){
// initialise the status of the caps lock key
var capsLock = false;
// initialise the list of listeners
var listeners = [];
// store whether we are running on a Mac
var isMac = /Mac/.test(navigator.platform);
// Returns whether caps lock currently appears to be on.
function isOn(){
return capsLock;
}
/* Adds a listener. When a change is detected in the status of the caps lock
* key the listener will be called, with a parameter of true if caps lock is
* now on and false if caps lock is now off. The parameter is:
*
* listener - the listener
*/
function addListener(listener){
// add the listener to the list
listeners.push(listener);
}
/* Handles a key press event. The parameter is:
*
* e - the event
*/
function handleKeyPress(e){
// ensure the event object is defined
if (!e) e = window.event;
// store the prior status of the caps lock key
var priorCapsLock = capsLock;
// determine the character code
var charCode = (e.charCode ? e.charCode : e.keyCode);
// store whether the caps lock key is down
if (charCode >= 97 && charCode <= 122){
capsLock = e.shiftKey;
}else if (charCode >= 65 && charCode <= 90 && !(e.shiftKey && isMac)){
capsLock = !e.shiftKey;
}
// call the listeners if the caps lock key status has changed
if (capsLock != priorCapsLock){
for (var index = 0; index < listeners.length; index ++){
listeners[index](capsLock);
}
}
}
// listen for key press events
if (window.addEventListener){
window.addEventListener('keypress', handleKeyPress, false);
}else{
document.documentElement.attachEvent('onkeypress', handleKeyPress);
}
// return the public API
return {
isOn : isOn,
addListener : addListener
};
})();
// output headers so that the file is downloaded rather than displayed
header('Content-Type: text/csv; charset=utf-8');
header('Content-Disposition: attachment; filename=data.csv');
// create a file pointer connected to the output stream
$output = fopen('php://output', 'w');
// output the column headings
fputcsv($output, array('Column 1', 'Column 2', 'Column 3'));
// fetch the data
mysql_connect('localhost', 'username', 'password');
mysql_select_db('database');
$rows = mysql_query('SELECT field1,field2,field3 FROM table');
// loop over the rows, outputting them
while ($row = mysql_fetch_assoc($rows)) fputcsv($output, $row);
var searchArray = document.location.search.substring(1).split("&");
//Take off the '?' and split into separate queries
//Now we'll loop through searchArray and create an associative array (object literal) called GET
var GET = [];
for (var searchTerm in searchArray){
searchTerm.split("="); //Divide the searchTerm into property and value
GET[searchTerm[0]] = searchTerm[1]; //Add property and value to the GET array
}
$(function(){
//Loop through each title
$("h3").each(function(){
var content = $(this).text().split(" ");
var widow = "&nbsp;"+content.pop();
$(this).html(content.join(" ")+widow);
});
});
$(function(){
var reversedSet = $("li").get().reverse();
//Use get() to return an array of elements, and then reverse it
$(reversedSet).each(function(){
//Now we can plug our reversed set right into the each function. Could it be easier?
});
});
public function helperImage($id, $size = 'original'){
$imageDataType = new \Andweb\Datatypes\Image('image');
$imageDataType->setValue($id);
return $imageDataType->getImageElement($size);
}
<?php
# http://jeffreysambells.com/2012/10/25/human-readable-filesize-php
function human_filesize($bytes, $decimals = 2) {
$size = array('B','kB','MB','GB','TB','PB','EB','ZB','YB');
$factor = floor((strlen($bytes) - 1) / 3);
return sprintf("%.{$decimals}f", $bytes / pow(1024, $factor)) . @$size[$factor];
}
echo human_filesize(filesize('example.zip'));