Automatycznie restartuje node.js gdy zauważy zmiany w kodzie
# npm init
Automatycznie restartuje node.js gdy zauważy zmiany w kodzie
# npm init
instalacja
# curl -sL https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - # echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list # apt-get update && apt-get install yarn
# yarn yarn install v1.19.1 info No lockfile found. [1/4] Resolving packages... [2/4] Fetching packages... [3/4] Linking dependencies... [4/4] Building fresh packages... success Saved lockfile. Done in 0.10s.
Obrazki wstawiane są z względnymi ścieżkami do dokumentów. Jest to problem podczas generowania PDF który pobierze obrazek tylko jeśli src zawiera pełny adres URL. W takim przypadku należy dodać linie:
relative_urls : false,
remove_script_host: false,
convert_urls : true,
pierwsza linia powinna wystarczyć.
To może być problemem w przypadku zmiany domeny (przenoszenia serwisu) – obrazki wciąż będą wskazywały na stary URL.
Plugin do eksportu zasobów w formacie csv
# composer require friendsofcake/cakephp-csvview:~3.0 - dla Cakephp 3.x # composer require friendsofcake/cakephp-csvview - dla v.4.x # bin/cake plugin load CsvView
Realizacja paralaksy za pomocą pluginu JS (rellax.min.js)
Lista wbudowanych reguł walidatora
Daje możliwość zmiany ilości rekordów dla użytkownika
Plugin do walidacji danych ekonomicznych wg. krajów: regon, pesel, nip, telefon, kod pocztowy,
Integracja z zapleczem cakephp w celu dołączania obrazków
Pobierz TinyMCE
# /usr/sbin/dpkg-reconfigure tzdata Europe/Warsaw
CakePHP – domyślny czas sesji 24 min – przedłużenie do 4 godzin
https://nodeschool.io/pl/#workshoppers
Instalacja
# npm install -g javascripting
# npm install -g learnyounode
# npm install -g how-to-npm
Powiększanie obrazków – przechodzenie między kolejnymi obrazkami – zintegrowany z bootstrapem
# apt-get install curl software-properties-common # curl -sL https://deb.nodesource.com/setup_12.x | bash - # apt-get install nodejs
# nodejs -v v12.6.0 # npm -V 6.9.0
# cd my_project # npm init # npm install pakiet@versja
Instalacja pakietów w katalogu projektu
# cd /var/www/html/project # npm init # npm install bootstrap # npm install jquery@>=3.0.0 # npm install popper.js@^1.14.7 # npm install --save-dev @fortawesome/fontawesome-free
# ln -s plik_lub_katalog_zrodlowy nowy_link
# SELECT DATE(created) AS data, SUM(price) AS przychod FROM transactions GROUP BY data WITH ROLLUP;
+------------+----------+
| data | przychod |
+------------+----------+
| 2019-06-10 | 406.00 |
| 2019-06-11 | 612.00 |
...................
| 2019-06-19 | 987.00 |
| 2019-06-21 | -3.00 |
| NULL | 7617.00 |
+------------+----------+
Definiowanie zmiennych – kilka wersji
W procedurach
DECLARE user CHAR(77) CHARACTER SET utf8;
SET user = (SELECT CURRENT_USER());
SELECT CONCAT('Witaj, ', user, '!') AS greeting;
Porównywanie dat
SELECT * FROM president WHERE birth >= '1970-01-01' AND birth < '1980-01-01';
Losowy rekord
# SELECT * FROM president ORDER BY RAND() LIMIT 1;
Zmiana domyślnej kolejności sortowania kolumny NULL
# SELECT * FROM president ORDER BY IF(death IS NULL, 0, 1), death DESC, last_name;
Oblicza pierwiastek kwadratowy i podaje wynik z 3 cyframi po przecinku
# SELECT FORMAT( SQRT(25), 3);
webhhtrack – linuxowy frontend do – httrack i htsserver
https://curl.haxx.se/docs/manpage.html
Podstawowe użycie – pobiera stronę
# curl https://example.com
https://xdsoft.net/jqplugins/datetimepicker/ – pobrać nowe
Wgranie plików na serwer:
/webroot/css/jquery.datetimepicker.css /webroot/lib/jquery.datetimepicker.full.min.js
templates/layout/default.ctp
head <link rel="stylesheet" href="/css/jquery.datetimepicker.css"> footer <?= $this->Html->script('/lib/jquery.datetimepicker.full.min.js') ?>
dołączyć plik inicjalizujący np. common.js
jQuery.datetimepicker.setLocale('pl');
jQuery(".datetimepicker").datetimepicker({
format:'Y-m-d',
timepicker:false,
mouseWheel: false,
dayOfWeekStart : 1, // poniedziałek
scrollMonth : false, // nie przewija myszą miesięcy
scrollInput : false, // nie przewija nic
i18n:{
pl:{
months:[
'Styczeń','Luty','Marzec','wiecień',
'Maj','Czerwiec','Lipiec','Sierpień',
'Wrzesień','Październik','Listopad','Grudzień',
],
dayOfWeek:[
"Nie", "Pon", "Wto", "Śr",
"Czw", "Pt", "Sob",
]
}
}
});
Użycie w szablonie:
<?= $this->Form->text('purchase_date', [ 'class' => 'form-control w-25 datetimepicker', 'default' => (new \DateTime())->format('Y-m-d') ]) ?>
Szczegóły pluginu
# composer require 'davidyell/proffer:^1.0'
Wszytkie pola poza 'published’
# $query->selectAllExcept( $articlesTable, ['published']);
Stos wywioań: alias / funkcja – pozostałe pola
# $query ->select(['slug' => $query->func()->concat(['title' => 'identifier', '-', 'id' => 'identifier'])]) ->select($articlesTable); // Select all fields from articles
Plugin CSV
https://packagist.org/packages/friendsofcake/cakephp-csvview
# composer require friendsofcake/cakephp-csvview # bin/cake plugin load CsvView
Instalacja
# wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
Nazwa domeny
# systeminfo | findstr /B /C:"Domain" Domain: WORKGROUP