Wyśrodkowanie tabeli z danymi do rozmiaru okna

$(window).resize(function() {
var winW = $(window).width();
var conW = parseInt($('#container').css('width'));
var tabW = parseInt($('table.list').css('width'));

if(winW>conW) {
var margin_left = -((tabW - conW)/2)-10;
$('table.list').css({'margin-left':margin_left});
} else {
$('table.list').css({'margin-left':0});
}
});
$(window).resize();

Tabelka normalna:
tabela

Tabelka wyśrodkowana:
tabela wyśrodkowana

Obrót strony o losową liczbę stopni

PHP:

$rotate_deg = rand(2, 4);
if(time()%3==0) $rotate_deg=180;
$smarty->assign('rotate_deg', $rotate_deg);

Smarty, html i css:

!{if $smarty.now%2==0 && $now_date=='04-01'}!
<style>body {overflow-x: hidden;}</style>
<div style="position: fixed; bottom:10px; left:10px; font-size:15px; color:green;">;)</div>
<div style="transform:rotate(!{$rotate_deg}!deg); -webkit-transform:rotate(!{$rotate_deg}!deg); -moz-transform:rotate(!{$rotate_deg}!deg); -o-transform:rotate(!{$rotate_deg}!deg);">
!{else}!
<div>
!{/if}!
..... strona ....
</div>

Przykład dodania obsługi hover do wierszy tabeli

jQuery(document).ready(function() {
    jQuery('.zasoby tr.zasoby_row').hover(
               function() {
                       jQuery(this).css({'background-color':"#f8f8f8"});
               },function() {
                       jQuery(this).css({'background':'transparent'});
               }
    );
});

Obliczanie różnicy czasu i obliczanie nowej daty

error_reporting(E_ALL ^ E_WARNING ^ E_PARSE ^ E_NOTICE);
//date_default_timezone_set ("PL/PL");
date_default_timezone_set ("Europe/Warsaw");

class date_check {
static public function check_on($data) {
$day_ts = 86400;

$date_order = $data['date_order'];
$roznica = (strtotime($date_order)-strtotime(date('Y-m-d')));

$roznica_day = floor($roznica/$day_ts);

echo $date_order."\n";
echo $roznica."\n";
echo $roznica_day."\n";

if($roznica_day<12) {

$date_start = date('Y-m-d', strtotime("1 day"));
$date_stop = date('Y-m-d', strtotime("21 day"));

} else {

$day_back = -10;
$day_next = 10;

$date_start = date('Y-m-d', strtotime($date_order." ".$day_back." day"));
$date_stop = date('Y-m-d', strtotime($date_order." ".$day_next." day"));
}

return array('date_start'=>$date_start, 'date_stop'=>$date_stop);
}
}

$data_back = date_check::check_on(array('date_order'=>'2016-04-18'));

echo $data_back['date_start']."\n";
echo $data_back['date_stop']."\n\n";

$data_back = date_check::check_on(array('date_order'=>'2016-04-11'));

echo $data_back['date_start']."\n";
echo $data_back['date_stop']."\n\n";

$data_back = date_check::check_on(array('date_order'=>'2016-04-26'));

echo $data_back['date_start']."\n";
echo $data_back['date_stop']."\n\n";

Wynik działania:

2016-04-18
-777600
-9
2016-04-28
2016-05-18

2016-04-11
-1382400
-16
2016-04-28
2016-05-18

2016-04-26
-86400
-1
2016-04-28
2016-05-18

Przykład użycia seTimeOut

var test = function(){
if(condition){
console.log('ok')
}
else {
setTimeout(test, 1000);
}
}
test();

Request do serwera co 1 minutę:

var timer = window.setInterval(function(){

  var time = (new Date).getTime();
  var ajax = jQuery.ajax({
    url: '?a=touch',
    cache: false,
    type: 'get',
    dataType: "json",
    data: {
        time: time
    },
    success: function(data) {
    }
  })
}, 60000);

Użycie selekotorów do ustawienia domyślnych wartości formualrza

jQuery('input[name^="czreal"]').val('2 dni robocze')
function test() {
jQuery('#Imie').val('Test');
jQuery('input[name=Nazwisko]').val('Test');
jQuery('#Plec[value="0"]').prop( "checked", true );
jQuery('#Stanowisko').val('Tester');
jQuery('select[name=typ_umowy]').get(0).options[1].selected=true;
jQuery('#stanowisko_kosztowe').val('100');
jQuery('select[name="Pytanie[16][]"').get(0).options[1].selected=true;
}