Плавная анимация изображений в управляемом цикле на javascript с параметрами, SVG и CSS

Стили

<style>
    #call_svg3, #call_svg2, #call_svg1 {
        position:absolute;
    }
    #call_svg1 {
        width:72px;
        height:72px;
        z-index:450000;
        top:20px;
        left:10px
    }
    #call_svg2 {
        width:88px;
        height:88px;
        z-index:350000;
        top:11px;
        left:2px;
    }
    #call_svg3 {
        width:104px;
        height:104px;
        z-index:250000;
        top:2px;
        left:-6px;
    }
    #call_svg2, #call_svg3 {
        display:none;
    }
    .right_rotate_call {
        -webkit-transform: rotate(30deg);
        -moz-transform:rotate(30deg);
        -o-transform:rotate(30deg);
        -ms-transform:rotate(30deg);
        transform:rotate(30deg);
        -webkit-transition:all 500ms;
        -moz-transition:all 500ms;
        -o-transition:all 500ms;
        transition:all 500ms;
    }
    .left_rotate_call {
        -webkit-transform: rotate(0deg);
        -moz-transform:rotate(0deg);
        -o-transform:rotate(0deg);
        -ms-transform:rotate(0deg);
        transform:rotate(0deg);
        -webkit-transition:all 500ms;
        -moz-transition:all 500ms;
        -o-transition:all 500ms;
        transition:all 500ms;
    }
</style>


Читать дальше →

Virtualbox - работа в консоли

список виртуалок
vboxmanage list vms


автостарт виртуалки
VBoxManage modifyvm w64 --autostart-enabled on


запуск виртуалки с графическим окном
VBoxManage startvm "VMBitrix7.0.0-x86_64_1"


запуск виртуалки без окна (желательно чтоб стояла галка «удаленный дисплей» и был указан порт)
VBoxManage startvm "w64" --type headless


создание снимка без остановки виртуалки
VBoxManage snapshot VMBitrix7.0.0-x86_64_1 take bitrix_proiz_31_6 --description ver_03042017 --live


ниже команда в теории должна сработать только при полной остановке виртуалки (автостарт):
VBoxManage modifyvm VMBitrix7.0.0-x86_64_1 --autostart-enabled on

Cтавим gnome и vncserver на centos vps


cd /var/lib/vz/template/cache
wget https://download.openvz.org/template/precreated/centos-7-x86_64.tar.gz

vzctl create 122 --ostemplate centos-7-x86_6

/sbin/iptables --list

yum install net-tools
yum install tigervnc-server
useradd maxa
passwd maxa
systemctl status vncserver@:.service
systemctl is-enabled vncserver@.service
cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service
~/.secret
(
ExecStart=/usr/sbin/runuser -l maxa -c "/usr/bin/vncserver %i -geometry 1280x1024"
PIDFile=/home/maxa/.vnc/%H%i.pid
)

sudo systemctl daemon-reload

yum groupinstall "GNOME Desktop"
reboot


Читать дальше →

Переход на зимнее время в PHP и MySQL после 26 октября


//установить компонент временной зоны в php
apt-get install php-pear php5-dev
pecl install timezonedb
/* создать потом в ручную в папке .php/conf.d/ файл timezone.ini
с содержимым: extension=timezonedb.so
и рестартнуть php5-fpm */
//обновление временных зон в php
wget http://ftp.debian.org/debian/pool/main/t/tzdata/tzdata_2014j-1_all.deb && dpkg -i tzdata_2014j-1_all.deb && dpkg-reconfigure tzdata
//Не забываем проверить время в Mysql
SELECT NOW();
//Проверка текущей временной зоны (должна быть SYSTEM)
SELECT @@global.time_zone, @@session.time_zone;
//При необходимости рестартим сервер баз данных
/etc/init.d/mysql restart

Чистим мусор в мускуле кроном в скрипте

Создаем скрипт /root/clearcontent.sh:
#!/bin/sh

/usr/local/mysql/bin/mysql -u root -pyourpass smeta_ru -sN -e "UPDATE smeta_ru.news SET clear_content = REPLACE(clear_content, ' ',' ');"
/usr/local/mysql/bin/mysql -u root -pyourpass smeta_ru -sN -e "UPDATE smeta_ru.page SET clear_content = REPLACE(clear_content, ' ',' ');"


Делаем его исполняемым:

chmod 750 /root/clearcontent.sh


В кроне запускаем каждые 20 минут:
*/20  * * * *   root    /root/clearcontent.sh

Обновляем данные в MySQL

//на определенную дату
UPDATE tariff SET DATE_CLOSE = '2013-09-09 11:11:11' WHERE DATE_CLOSE IS NULL OR DATE_CLOSE = '0000-00-00 00:00:00';


//реплейсем все совпадения
UPDATE news SET clear_content = REPLACE(clear_content, '& nbsp ;',' ');


//обновляем на текущую дату в C#
string datenow = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
string notnullsql = "UPDATE tariff SET DATE_CLOSE = '" + datenow + "' WHERE DATE_CLOSE IS NULL OR DATE_CLOSE = '0000-00-00 00:00:00'";
MySqlCommand notnullcmd = new MySqlCommand(notnullsql, Connection());
notnullcmd.ExecuteScalar();

Создаем и публикуем WCF-сервис на C# в IIS

Дело было вечером, делать было нечего… ))
Но да ладно — перейдем к чистой практике))

1. Создаем новый проект в visual studio:
Visual C# -> WCF -> Приложение службы WCF (наше название - WcfService2)


2. Здесь мы меняем с дефолта только тип входящего и выходного параметра с int на string:
а) в файле IService1.cs в GetData меняем тип на string:
string GetData(string value)

б) в файле Service1.svc.cs в GetData меняем тип на string:
public string GetData(string value)


3. Проверяем:
в обозревателе решений переходим на Service1.svc.cs и жмем на F5 — запускается тестовый WCF-клиент; выбираем метож GetData и в значении вбиваем любую строку — потом «Вызвать». В результате видим: «You entered: Maxa»

4. Публикуем:
В обозревателе решений правой кнопкой мыши на головном файле сервиса (в нашем случае WcfService2) выбираем Опубликовать. Именование профиля — обязательно свое (не дефолтное). Способ публкиации — Файловая система. Выбираем путь и жмем на «Опубликовать». Далее переходим в проводнике на эту папку и снимаем галочку «только для чтения»

Читать дальше →

Проверка и запуск менеджера Mysql Cluster

Файл C:\mysql\cluster\bin\checkmgmd.vbs

Set oShell = WScript.CreateObject("WScript.Shell")
strComputer = "."
strProcess = "ndb_mgmd.exe"
Set objWMIService = GetObject("winmgmts:" _
    & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colProcesses = objWMIService.ExecQuery _
    ("Select * from Win32_Process Where Name = '" & strProcess & "'")
If colProcesses.Count = 0 Then
	oShell.Run "C:\mysql\cluster\bin\manager.vbs",0,False
End If

Добавляем запуск вышеуказанного скрипта в планировщик заданий с интервалом в пять минут на каждый день