All posts by amri

Синхронизиране с ftp (lftp) rsync

lftp -u FTP_USER,FTP_PASS -e 'mirror REMOTE_DIRECTORY LOCAL_DIRECTORY' FTP_SERVER

Ако излезе тази грешка:
mirror: Fatal error: Certificate verification: certificate common name doesn't match requested host name ‘FTP_SERVER’
1 error detected

Фикса е:

echo "set ssl:verify-certificate no" >> ~/.lftp/rc

VN:F [1.9.22_1171]
Rating: 0.0/5 (0 votes cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)

Sublime

Тук ще описвам интересни бележки за Sublime

Любими плъгини:
Emmet
BracketHighlighter
Color Highlighter
ColorPicker (Ctrl + Shift + C )
Theme Centurion
AutoFileName
TabsExtra
SublimeLinter
sublimelinter
sublimelinter-php
sublimelinter-jshint
HTML-CSS-JS Prettify
SideBarEnhancements
Super Calculator

 

Инсталиране на jshint linux:
apt-get update && apt-get install nodejs npm nodejs-legacy php;
npm install -g jshint;
npm install -g csshint;

Монтиране на ssh на отдалечена машина
apt-get install && apt-get install -y sshfs;
sshfs amri@server.bg:/w/ ~/Desktop/server.bg -o port=33

Синтаксис по подразбиране PHP(може и Html и други):

File: ~/.config/sublime-text-3/Packages/User/default_syntax.py

import sublime, sublime_plugin

class DefaultSyntaxCommand(sublime_plugin.EventListener):
def on_new(self, view):
view.set_syntax_file('Packages/PHP/PHP.tmLanguage')

 

Инсталиране на пакети (в случая emmet за отворени/затворени тагове)

В този случай : emmet
https://packagecontrol.io/installation

ctrl+` или View > Show Consol

import urllib.request,os,hashlib; h = 'df21e130d211cfc94d9b0905775a7c0f' + '1e3d39e33b79698005270310898eea76'; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); by = urllib.request.urlopen( 'http://packagecontrol.io/' + pf.replace(' ', '%20')).read(); dh = hashlib.sha256(by).hexdigest(); print('Error validating download (got %s instead of %s), please try manual install' % (dh, h)) if dh != h else open(os.path.join( ipp, pf), 'wb' ).write(by)

Ctrl + Shift + P или  Preferences > Package Control > Package Control: Install Package
Emmet и това е 🙂
Комбинацията е Control + Shift + ' и се маркира затварящия таг

VN:F [1.9.22_1171]
Rating: 5.0/5 (1 vote cast)
VN:F [1.9.22_1171]
Rating: +1 (from 1 vote)

Инсталиране на yuicompressor (оптимизиране на js, css)

1. Инсталиране на java
mkdir -p /usr/share/java

wget https://github.com/yui/yuicompressor/releases/download/v2.4.8/yuicompressor-2.4.8.jar -P /usr/share/java

vi /usr/bin/yc

#!/bin/sh

java -jar /usr/share/java/yuicompressor-2.4.8.jar "$@"
chmod +x /usr/bin/yc
yc default.css -o default-min.css

yc sample.js -o sample-min.js

VN:F [1.9.22_1171]
Rating: 0.0/5 (0 votes cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)

Показване на дублираните редове в libfreoffice и linux

1. В gnu/linux терминал:

cat a.txt b.txt |sort|uniq -u

2. В libreoffice:

1. В колона “A” поставяме малкия списък
2. В колона “B” поставяме пълния списък
3. Маркираме цялата колона A и сортираме по азбучен ред> Sort Ascending → Current selection
4. Маркираме цялата колона B и сортираме по азбучен ред > Sort Ascending → Current selection
5. В колона “C” слагаме формулата =COUNTIF(A$1:A$10000,B1) на цялата колона
6. Маркираме цялата колона C и сортираме по азбучен ред> Sort Ascending → Extend selection

VN:F [1.9.22_1171]
Rating: 5.0/5 (1 vote cast)
VN:F [1.9.22_1171]
Rating: +1 (from 1 vote)

Скриване на елемент за мобилни устройства

Идеята е с javascript да идентифицираме клиента по user agent-а и да скрием id блок от него.

<script>
var mobile = (/iphone|ipod|android|blackberry|mini|windows\sce|palm/i.test(navigator.userAgent.toLowerCase()));
if (mobile) {
$('#bu1').hide();
}

</script>

VN:F [1.9.22_1171]
Rating: 0.0/5 (0 votes cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)

joomla съобщение: "Unable to load Cache Storage: database"

Днес на един сайт на joomla излязоха следните съобщения:

Unable to load Cache Storage: database
Unable to load Cache Storage: database
Unable to load Cache Storage: database

за да се фиксне е необходимо в configuration.php да се направят следните корекции:

ПРЕДИ
var $cache_handler = 'database';

СЛЕД
var $cache_handler = 'file';

VN:F [1.9.22_1171]
Rating: 0.0/5 (0 votes cast)
VN:F [1.9.22_1171]
Rating: +1 (from 1 vote)

Google maps embed iframe -- респонсив

<style>
    .google-maps {
        position: relative;
        padding-bottom: 30%; // This is the aspect ratio
        height: 0;
        overflow: hidden;
    }
    .google-maps iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100% !important;
        height: 100% !important;
    }
</style>
<br /><br /><center><h3>Map</h3><br /></center>
<div class='google-maps'>
<iframe src='https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d2932.58550931219!2d23.29158247261225!3d42.69132162380618!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x40aa85232c054953:0x408417d08050add6!2sBusiness+Centre+Serdika!5e0!3m2!1sen!2sbg!4v1468307728158&quot; width='600' height='450' frameborder='0' style='border:0' allowfullscreen></iframe>
</div>
VN:F [1.9.22_1171]
Rating: 5.0/5 (1 vote cast)
VN:F [1.9.22_1171]
Rating: +1 (from 1 vote)

Squirrelmail с проблем при кирилица

При отваряне или препращане на писма с кирилица понякога не се прави коректно от squirrelmail затова е необходимо да конвертираме всичко в utf8 и да го сетнем.
squirrelmail-cyrillic-problem

Ето го и решението:

cd /usr/share/squirrelmail_nuts;
find . -iname squirrelmail.po|grep bg
cd locale/bg_BG/LC_MESSAGES/;

iconv -f CP1251 -t UTF-8 squirrelmail.po > squirrelmail.utf-8.po;
sed 's/cp1251/UTF-8/' squirrelmail.utf-8.po > squirrelmail.po;
rm squirrelmail.utf-8.po;
msgfmt -o squirrelmail.mo squirrelmail.po;

cd /usr/share/squirrelmail_nuts;
find . -iname i18n.php

vim ./functions/i18n.php
$languages["bg_BG"]["NAME"] = 'Bulgarian';
$languages["bg_BG"]["CHARSET"] = 'utf-8';
$languages["bg_BG"]["LOCALE"] = 'bg_BG.UTF-8';
$languages["bg"]["ALIAS"] = 'bg_BG';

vim  locale/bg_BG/setup.php
$languages['bg_BG']['NAME']    = 'Bulgarian';
$languages['bg_BG']['CHARSET'] = 'utf-8';
$languages['bg_BG']['LOCALE']  = 'bg_BG.UTF-8';
$languages['bg']['ALIAS']      = 'bg_BG';

/etc/init.d/apache2 reload

thx to Hipo

VN:F [1.9.22_1171]
Rating: 5.0/5 (1 vote cast)
VN:F [1.9.22_1171]
Rating: +1 (from 1 vote)

Как да имаш 40 рамкова центрофуга за мед(INOX) на стойност 600 лв.

В тази публикация ще ви обясня как се сдобих с центрофуга за мед (40 рамки магазинни) за по- малко от 600 лв. и то без капка труд 🙂
Всичко се крие в това, че разбрах кой в гр. Добрич прави външния кош на центрофугите и кой в гр. Добрич прави вътрешния ротор и задвижването (Благодарности на Красимир).

Бързи контакти на майстори в Добрич:

1. Майстор на ротори и задвижване на центрофуги: Константин- 089 844 5801
2. Майстор на коша за центрофугата: Марин- 088 536 3929

Идеята е центрофугата да има два вида задвижване:
1. Ръчен (Редуктор, идеята е ако поради някаква причина няма ток да може пак да се използва). Благодарности на Петър Ненков
2. Автоматичен(мотор + плавно увеличаване на оборотите и тяхното намаляване или с прост потенциометър)

Цената на центрофугата е със "ръчно" задвижване, а автоматичното не е особено по- скъпо един мотор,управление и в общи линии е това.

ДА ЗАПОЧНЕМ КАК СЕ СЛУЧИ ВСИЧКО:

Свързах се с тези майстори и те ми казаха какви материали им трябват.

Намерих материалите от:
1. Интерметал- Инокс
2. Зита (гр. Добрич)- Черни метариали

kalkulaciq_na_vsichki_ceni

Тук съм разбил материалите от Интерметал по тяхната фактура:
f-ra_intermetal

След като закупих инокса и черните метали, занесох иноксовия лист на Марин и той за 1 ден направи външния съд. През това време докато Марин правеше коша отидох до Металекс за да закупя диференциал от Лада(задно задвижване) който да се използва за редуктор(ръчния режим). Забележете, че не се използват тривиалните прави- конусни зъби, а закривени които предоставят  "по- мазно" и "по- лесно" движение:

След като имам кош, редуктор и материалите за ротора ги занесох на Константин.
След известно време всичко беше готово и изключително майсторски направено.
Изключителни благодарности на Констактин за професионализма!

Снимки на центрофугата след като я взех от Константин:


В крайна сметка за по- малко от 600 лв. получих центрофуга за центрофугиране на 40 магазиннни рамки.

Снимки и на центрофугата на моя приятел/ментор който също си прави при тези майстори:

Двамата майстори до колкото разбрах не се познават и работят за други производители. Те реално не правят завършен продукт, но затова сте вие като вземете единия детайл да го занесете на другия и да се получи крайния продукт 🙂

Контакти на майстори в Добрич за направа на центрофуга:

1. Майстор на ротори и задвижване на центрофуги: Константин- 089 844 5801
2. Майстор на коша за центрофугата: Марин- 088 536 3929

PS: Сигурно се питате дали не са много магазинните рамки, но не са много . Центрофугират се съвсем нормално и лесно с ръчния режим. Коша е за 24 рамки, но ние сложихме 40 и всичко е супер!.
PS2: Центрофугата е правена през февруари 2016 година, но сега ми остана време да опиша всичко.

VN:F [1.9.22_1171]
Rating: 5.0/5 (2 votes cast)
VN:F [1.9.22_1171]
Rating: +6 (from 6 votes)