Po-słowie na każdy temat

czyli programowanie i nie tylko

jQuery EasyUI – datagrid – filtr przedziałowy po dacie

Nie wszystko otrzymujemy w pakiecie, inaczej nie nazywalibyśmy się programistami. Nieprawdaż? Takie wyzwanie stanęło niedawno przede mną podczas „chwilowych” prac z biblioteką jQuery EasyUI. Zadanie było proste – grid. Grid z danymi, grid z filtrami. Wszystko pięknie. Sam grid jest wsparty natywnie biblioteką, filtry obsługiwane są przez rozszerzenie. Filtr daty również istnieje. Ale, no właśnie – filtrowanie daty po przedziale to już miejsce na popis programistów. Nawet nie w całości, jeśli dokładnie śledzimy sieć. Zachęcam to lektury.

O datagridzie przeczytacie tutaj. O rozszerzeniach – filtrowaniu grida – dowiecie się więcej z tej strony. Zmierzamy w dobrym kierunku. Przyglądając się domyślnym operatorom filtrowania, można wywnioskować, że działają one typowo wspierając treść (String) lub liczby (Number). Dociekliwych odsyłam do źródła otwartego kodu – tutaj.

Zatem możemy dodać filtr daty, ale wyłącznie porównując wartość komórki do jednej wskazanej wartości podanej w filtrze. To nas nie interesuje, więc musimy coś dodać. Najpierw chwila poszukiwań rozwiązań po sieci i … mamy jeden traf. Jest rozwiązanie, ale jednak niekompletne. To nie problem. W tym artykule sprawimy, by stało się kompletne.

Czytaj dalej…

Google Maps + geolokalizacja

Znowuż strudzony codziennością i poirytowany brakiem czasu próbuję stworzyć wrażenie, że nie zaniedbuję czytelników. Spodziewam się, że tylko ciekawy artykuł może temu zaradzić. Zatem zapraszam do lektury. W niej geolokalizacja po IP i temat map.

Google-Maps-icon

Google Maps – czy jest jakiś czytelnik, który nie spotkał się z tą aplikacją Google? Domyślam się, że nie (śmiałe przekonanie). Jednak, jeśli chodzi o wykorzystywanie API w zewnętrznych aplikacjach, to ten procent czytelników maleje.

Z kolei, jeśli chodzi o geolokalizację, to z pomocą przychodzi z pomocą FreeGeoIP. Jest to rozwiązanie darmowe, jedno z nielicznych. Jeśli potrzebujemy dokładniejszych danych geolokalizacyjnych możemy skorzystać opcji płatnych, jakie dają m.in.: IPLigence, IPAddressLabs, IPInfoDB.

Czytaj dalej…

JavaScript – CryptoJS

Tym razem mało odkrywczy artykuł. Chociaż dla osób, którzy poszukują sposobu szyfrowania po stronie JavaScriptu może okazać się bardzo pomocny. Rzecz rozchodzi się o bibliotekę CryptoJS, która oferuje nam funkcje skrótu, algorytmy szyfrujące, HMAC i inne. Biblioteka jest darmowa, rozprowadzana na licencji New-BSDco pozwala na dowolne wykorzystanie w aplikacjach internetowych.

Biblioteka udostępnia nam algorytmy mieszające (haszujące, in. funkcje skrótu) takie, jak MD5, SHA-1, SHA-2, SHA-3 oraz RIPEMD-160. Każda z funkcji rozszerzona jest o HMAC, czyli kod MAC z wmieszanym tajnym kluczem pozwalającym utrzymać zarówno ochronę integralności, jak i autentyczności danych.

cryptoPakiet został rozszerzony o funkcję PBKDF2 ściśle powiązaną z generowaniem ciągów kluczowych przy wykorzystaniu soli oraz wielokrotnego zastosowania funkcji skrótu. Nie tyle akurat ta funkcja, w opisywanej bibliotece jest godna uwagi, ale samo podejście do generowania klucza. W obecnych czasach bardzo dynamicznego rozwoju technologicznego wszelkie utrudnienia w umożliwieniu odgadnięcia hasła wejściowego są nie tyle zalecane, co konieczne.

Poza funkcjami skrótu pakiet CryptoJS oferuje również kryptograficzne algorytmy szyfrujące. Na liście w obecnej wersji jest AES, DES, 3DES, Rabbit, RC4, RC4Drop. Czytaj dalej…

JavaScript – funkcja isInt()

jsNiekiedy może wydawać się, że w JavaScripcie jest wszystko, ale to tylko złudzenie. Bardzo podstawowym przykładem, który warto tutaj przytoczyć, jest sprawdzanie czy zmienna jest typu integer. Przedstawiam funkcję isInt(), której zadanie polega na interpretacji zmiennej w tym kontekście. O tym właśnie jest ten krótki artykuł. Wydawać się może, że podstawowe sprawdzenie typu zmiennej może być łatwe i przyjemne. Niekoniecznie.
Czytaj dalej…

Same Origin Policy – krótka wzmianka

Kilka słów o Same Origin Policy, czyli artykuł powiązany z AJP1.3 Connector. Czy i jak można wykorzystać ww. konektor? Jednym z zastosowań i udogodnień z tym związanych jest możliwość bezproblemowego manipulowania ramkami w strukturze strony internetowej.

Zasada Same Origin Policy dotyczy właśnie manipulowania strukturą innego dokumentu w ramach obecnego dokumentu (o określonym adresie url). Gdy ramkę ze stroną generowaną przez Tomcata zagnieździmy w dokumencie HTML serwera Apache HTTP to już się domyślamy, że wszelka manipulacja (węzłami, funkcjami Javascript itp.) zakończy się niepowodzeniem z powodu tego chociażby, że główny dokument działać będzie domyślnie na porcie 80, a Tomcat np. 8080. Rozbieżność portu ogranicza nasze działania. O tym już wiecie, czas dowiedzieć się więcej na temat SOP.  Czytaj dalej…