datetimepicker

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')
]) ?>

więcej opcji w tabeli

postfix – php mail (smtputf8)

Przy wysyłaniu maila z poziomu PHP niektóre serwery nie obsługują smtputf8.

# tailf /var/log/mail.log

Mar 7 11:22:31 mail postfix/smtp[22107]: 6CF0BA105E: to=<biuro@topdieta.pl>, relay=topdieta.pl[85.128.156.6]:25, delay=0.27, delays=0.04/0.02/0.2/0, dsn=5.6.7, status=bounced (SMTPUTF8 is required, but was not offered by host topdieta.pl[85.128.156.6])

Aby wyłączyć wsparcie należy:

# apt install libicu-dev
# postconf "smtputf8_enable = no"
# posfix reload

 

openssl – certyfikat serwera self-signed – bez CA

Nowy certyfikat serwera: bez CA – na 3 lata – bez zaszyfrowanego klucza

# openssl req -newkey -x509 -nodes rsa:4096 -days 1089 
              -keyout /etc/ssl/private/serverkey.pem 
              -out    /etc/ssl/newcerts/servercert.pem

Weryfikacja

# openssl x509 -purpose -in /etc/ssl/newcerts/servercert.pem

Czytaj dalej openssl – certyfikat serwera self-signed – bez CA

Postfix – TLS

TLS jest domyślnie wyłączony, aby go włączyć w pliku

/etc/postfix/main.cf:
   smtpd_tls_security_level = may   - serwer ogłasza obsługę STARTTLS klientom SMTP, nie wymusza szyfrowania

   smtpd_tls_security_level = encrypt    - wymusza szyfrowanie TLS (NIE STOSOWAĆ)

Włącza szyfrowanie na porcie 465 (smtps) – odkomentować opcje:

/etc/postfix/master.cf:

# zakomentować opcję - wyłącza port 25
    #smtp    inet  n       -       y       -       -       smtpd

# odkomentować opcje - włącza 465
    smtps    inet  n       -       n       -       -       smtpd
      -o smtpd_tls_wrappermode=yes 
      -o smtpd_sasl_auth_enable=yes

Czytaj dalej Postfix – TLS

cakephp 3 – weak password

Jeśli baza haseł pochodzi z zewnętrznej aplikacji i jest skrótem sha1 to aby Cake skutecznie użył Fallback’u – trzeba wyłączyć sól.

Cake/Auth/WeakPasswordHasher.php

public function hash($password)
{
return Security::hash($password, $this->_config['hashType'], true);
}

true zamienić na false - nie będzie używał Security::salt

https://api.cakephp.org/3.0/source-class-Cake.Auth.WeakPasswordHasher.html#21-72

Postfix – main.cf – podstawowa konfiguracja

 

# postconf mail_version      - wersja systemu 
  mail_version = 3.1.9

# nano /etc/postfix/main.cf

# postconf -e 'smtpd_sasl_path = private/auth'
# postconf -n

# postfix reload
lub 
# systemctl restart postfix
# systemctl status postfix
# netstat -tlpn 

# tailf /var/log/mail.log

Czytaj dalej Postfix – main.cf – podstawowa konfiguracja