2017 m. liepos 2 d., sekmadienis

rsync backup from remote server using SSL keys

https://www.contentecontent.com/blog/2015/01/automated-rsync-backups-from-a-webserver-to-qnap-nas/

2017 m. gegužės 29 d., pirmadienis

Tobulesnis žemėlapių framework

https://www.skobbler.com/  paremtas penstreetmap, nbet veikiantis greičiau, su papildomomis f-jomis

2017 m. balandžio 12 d., trečiadienis

centos 6 php versijos ijungimas

https://doc.owncloud.org/server/8.2/admin_manual/installation/php_55_installation.html

Disable loading the old PHP Apache modules by changing their names:
mv /etc/httpd/conf.d/php.conf /etc/httpd/conf.d/php54.off
mv /etc/httpd/conf.modules.d/10-php.conf /etc/httpd/conf.modules.d/10-php54.off
Copy the PHP 5.5 Apache modules into place:
cp /opt/rh/httpd24/root/etc/httpd/conf.d/php55-php.conf /etc/httpd/conf.d/
cp /opt/rh/httpd24/root/etc/httpd/conf.modules.d/10-php55-php.conf /etc/httpd/conf.modules.d/
cp /opt/rh/httpd24/root/etc/httpd/modules/libphp55-php5.so /etc/httpd/modules/
Then restart Apache:
service httpd restart

2017 m. kovo 30 d., ketvirtadienis

mysql panasumo matavimas su levenshtein

The Levenshtein distance between two strings is the minimum number of operations needed to transform one string into the other, where an operation may be insertion, deletion or substitution of one character. Jason Rust published this MySQL algorithm for it at http://www.codejanitor.com/wp/.

CREATE FUNCTION levenshtein( s1 VARCHAR(255), s2 VARCHAR(255) )
  RETURNS INT
  DETERMINISTIC
  BEGIN
    DECLARE s1_len, s2_len, i, j, c, c_temp, cost INT;
    DECLARE s1_char CHAR;
    -- max strlen=255
    DECLARE cv0, cv1 VARBINARY(256);
    SET s1_len = CHAR_LENGTH(s1), s2_len = CHAR_LENGTH(s2), cv1 = 0x00, j = 1, i = 1, c = 0;
    IF s1 = s2 THEN
      RETURN 0;
    ELSEIF s1_len = 0 THEN
      RETURN s2_len;
    ELSEIF s2_len = 0 THEN
      RETURN s1_len;
    ELSE
      WHILE j <= s2_len DO
        SET cv1 = CONCAT(cv1, UNHEX(HEX(j))), j = j + 1;
      END WHILE;
      WHILE i <= s1_len DO
        SET s1_char = SUBSTRING(s1, i, 1), c = i, cv0 = UNHEX(HEX(i)), j = 1;
        WHILE j <= s2_len DO
          SET c = c + 1;
          IF s1_char = SUBSTRING(s2, j, 1) THEN 
            SET cost = 0; ELSE SET cost = 1;
          END IF;
          SET c_temp = CONV(HEX(SUBSTRING(cv1, j, 1)), 16, 10) + cost;
          IF c > c_temp THEN SET c = c_temp; END IF;
            SET c_temp = CONV(HEX(SUBSTRING(cv1, j+1, 1)), 16, 10) + 1;
            IF c > c_temp THEN 
              SET c = c_temp; 
            END IF;
            SET cv0 = CONCAT(cv0, UNHEX(HEX(c))), j = j + 1;
        END WHILE;
        SET cv1 = cv0, i = i + 1;
      END WHILE;
    END IF;
    RETURN c;
  END; 

Helper function:
 
CREATE FUNCTION levenshtein_ratio( s1 VARCHAR(255), s2 VARCHAR(255) )
  RETURNS INT
  DETERMINISTIC
  BEGIN
    DECLARE s1_len, s2_len, max_len INT;
    SET s1_len = LENGTH(s1), s2_len = LENGTH(s2);
    IF s1_len > s2_len THEN 
      SET max_len = s1_len; 
    ELSE 
      SET max_len = s2_len; 
    END IF;
    RETURN ROUND((1 - LEVENSHTEIN(s1, s2) / max_len) * 100);
  END; 





You have to override your ; delimiter with something like $$ to avoid this kind of error.
After your function definition, you can set the delimiter back to ;.
This should work:

DELIMITER $$
CREATE FUNCTION F_Dist3D (x1 decimal, y1 decimal) 
RETURNS decimal
DETERMINISTIC
BEGIN 
  DECLARE dist decimal;
  SET dist = SQRT(x1 - y1);
  RETURN dist;
END$$
DELIMITER ;

2017 m. kovo 8 d., trečiadienis

php desktiop app

Kaip kad yra android/ios frameworkai, kurie padaro appsus iš html+css+js+sqlite taip yra ir windows desktop app padarymo glaimybe. placiau apie frameworkus https://github.com/cztomczak/phpdesktop bei https://www.sitepoint.com/3-ways-develop-cross-platform.../

2017 m. vasario 10 d., penktadienis

javascript find visual center of polygon

https://github.com/mapbox/polylabel

http://stackoverflow.com/questions/22796520/finding-the-center-of-leaflet-polygon

http://stackoverflow.com/questions/16282330/find-centerpoint-of-polygon-in-javascript

Bootstrap free themes

https://bootswatch.com/


http://blacktie.co/2014/07/dashgum-free-dashboard/#more-362

ckeditor bootstrap plugin

https://github.com/kaido24/btgrid

mysql config tuning

https://github.com/major/MySQLTuner-perl

http://www.mysqlcalculator.com/

http://www.tecmint.com/mysql-mariadb-performance-tuning-and-optimization/3/

http://stackoverflow.com/questions/13259275/mysql-tmp-table-size-max-heap-table-size

mysql replication

MHA tool - managing master/slave
https://code.google.com/p/mysql-master-ha/
https://mysqlstepbystep.com/2015/06/01/mysql-high-available-with-mha-2/

master/slave tipologija
https://severalnines.com/resources/tutorials/mysql-replication-high-availability-tutorial

tutorials
http://www.servermom.org/master-slave-mysql-replication-tutorial/
https://www.digitalocean.com/community/tutorials/how-to-set-up-master-slave-replication-in-mysql
http://dba.stackexchange.com/questions/8680/what-is-the-best-way-to-create-mysql-master-slave-replication-setup-and-troubles
http://www.tecmint.com/how-to-setup-mysql-master-slave-replication-in-rhel-centos-fedora/
http://www.techrepublic.com/blog/tr-dojo/set-up-mysql-database-replication-to-ensure-up-to-date-backups/

On master, lock the database read-only, flush everything.
On slave, stop the mysqld daemon (very important!!!)
rsync the data store directory from the master to the slave
start the slave
unlock the master.

load balancing and high availability

tool http://www.linuxvirtualserver.org/

rsync over ssh with public key (no pass)

https://www.digitalocean.com/community/tutorials/how-to-copy-files-with-rsync-over-ssh

background pattern textures generator

http://bg.siteorigin.com/
https://www.transparenttextures.com/

2017 m. vasario 8 d., trečiadienis

linux cmd delete files in subdirectories older than x days

Be careful with special file names (spaces, quotes) when piping to rm.

There is a safe alternative - the -delete option:

find /path/to/directory/ -mindepth 1 -mtime +5 -delete
That's it, no separate rm call and you don't need to worry about file names.

Replace -delete with -depth -print to test this command before you run it (-delete implies -depth).

shareimprove this answer
edited May 25 '15 at 18:10

Stephen Kitt
59k9104140
answered May 25 '15 at 16:44

basic6
1,5951018
6
Also use -type f to delete files only (and keep sub directories) – Oleg Mar 4 '16 at 8:44
1
Alternatively, if you want to do the same for all files NEWER than five days: find /path/to/directory/ -mindepth 1 -mtime -5 -delete – zmonteca Apr 19 '16 at 17:29

2017 m. sausio 30 d., pirmadienis

UUID

mysql uuid() arba PHP https://gist.github.com/dahnielson/508447/b271e314c3c3190b0e31bc7f2f4f35da3c04f91c

Version 1 (date-time and MAC address)
Version 2 (date-time and MAC Address, DCE security version)
Versions 3 and 5 (namespace name-based)
Version 4 (random)

2017 m. sausio 1 d., sekmadienis

centos virtualmin multiple php versions

https://techjourney.net/install-and-run-multiple-and-newer-5-4-or-5-5-php-versions-in-virtualmin/
https://www.webfoobar.com/index.php/node/45

test http requests

https://www.hurl.it/ , support oauth, get, post, put, custom headers,  etc...

Milligram - super small HTML UI framwerok

https://milligram.github.io/

Mobile app frameworks

http://ionicframework.com/  (angularjs,html5)
http://mobileangularui.com/ (bootstrap based)
https://framework7.io/ (material theme, ui components)
https://coronalabs.com/  (fot x10 times faster coding)
https://www.nativescript.org/  (native UI, JS - gera)
http://phonegap.com/

facebook sdk

SDK

https://developers.facebook.com/docs/javascript/quickstart/v2.5
https://developers.facebook.com/docs/javascript/examples
https://developers.facebook.com/docs/javascript/howto/jquery/v2.5

Post on user wall
http://stackoverflow.com/questions/2724977/using-facebook-graph-to-simply-post-a-wall-message-with-just-javascript
http://stackoverflow.com/questions/13810257/post-on-facebook-wall-with-javascript-sdk
https://gist.github.com/findjonmos/5777900

Get user profile data
http://stackoverflow.com/questions/5846752/getting-an-facebook-user-profile-data-with-javascript

mysql geo spatial clustering - mysql geo funkcijos

https://www.fromdual.com/mysql-spatial-functionality-points-of-interest-around-me
https://www.percona.com/blog/2013/10/21/using-the-new-mysql-spatial-functions-5-6-for-geo-enabled-applications/

MySQL Master Slave Database Replication

https://support.rackspace.com/how-to/set-up-mysql-master-slave-replication/
https://plusbryan.com/mysql-replication-without-downtime
http://www.webaugur.com/webdev/19-mysql-master-master-slave-s-database-replication.html
https://www.digitalocean.com/community/tutorials/how-to-set-up-master-slave-replication-in-mysql
https://www.digitalocean.com/community/tutorials/how-to-set-up-mysql-master-master-replication

https://www.digitalocean.com/community/tutorials/how-to-scale-web-applications-on-ubuntu-12-10

Easily set up sound effects to HTML elements (jquery plugin)

http://rm-labo.com/labo/easyaudioeffects/

eshop kurimo teisiniai aspektai

https://www.ada.lt/index.php?lng=lt&action=page&id=721
http://www.webo.lt/internetines-parduotuves-steigimas-mokesciai-kurimas.htm
Esme: registurotis asmens duomenu tvarkytoju, asmens duomenu apsaugos inspekcijoje

htaccess gzip kompresijos ijungimas ir cookies isjungimas

paspartinti krovimui, tikslinga js,css ir paveikslus iskelti i cookieles domena. Kitiems ouslapiams tikslinga ijungti gzip kompresija.

http://www.xpertdeveloper.com/2012/04/htaccess-gzip-compression/
https://css-tricks.com/snippets/htaccess/active-gzip-compression/

Del cookie htaccess suvesti
  Header unset Cookie
  Header unset Set-Cookie

<FilesMatch "\.(js|css|jpg|png|jpeg|gif|xml|json|txt|pdf|mov|avi|otf|woff|ico|swf)$">
RequestHeader unset Cookie
Header unset Cookie
  Header unset Set-Cookie
</FilesMatch>

Additional options

Here are other settings that you can add to the .htaccess file that can help reduce the request header even more. Also you may want to use a subdomain (cname) to load all your static content.

Header unset Pragma
FileETag None
Header unset ETag

vewview app be jokiu frameworku

https://developer.chrome.com/multidevice/webview/gettingstarted

kad websaitas pasileistu kaip app is mob darbalaukio

tam pakanka deti tokia zymas
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="mobile-web-app-capable" content="yes">

jquery autocomplete

http://easyautocomplete.com/