geo ip example

28.01.2016 php скрипты , ,

<?
$ip = '192.168.11.5';
if($ch = curl_init()){		
	$url = "http://freegeoip.net/json/". $ip; 
	$headers = array(
		"Content-type: application/json",
		"Accept: application/json",
		"Accept-Language:ru-RU,ru;q=0.8,en-US;q=0.6,en;q=0.4"
	); 
	$ch = curl_init();
	curl_setopt($ch, CURLOPT_URL,$url);
	curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
	curl_setopt($ch, CURLOPT_TIMEOUT, 30);
	curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);	
 
	$data = curl_exec($ch); 
 
	if (curl_errno($ch)) {

		// curl_error($ch);         

	  
	} else {		         
		$arData = json_decode($data, true) ; 
	}
	
	curl_close($ch);  
}
print_r($arData);
?>

Bitrix Вывод заголовка через отложенную функцию

04.12.2015 Bitrix

function ShowH1()
	{
	  global $APPLICATION;
		
		$hide_h1 = $APPLICATION->GetProperty("hide_h1", 'N');
		
		if($hide_h1 == 'N'){
			return '<div class="col-xs-12"><h1 class="main-header">'.$APPLICATION->GetTitle().'</h1></div>';

		}
	}
	
	echo $APPLICATION->AddBufferContent('ShowCondTitle');

автосабмит при изменении селекта

11.10.2015 Bitrix, javascript


<select name="cnt" id="input-limit" class="form-control" onchange="location = '<?=$APPLICATION->GetCurPageParam("cnt='+this.value+'", array('cnt'))?>';">
<option value="6" <?if (!isset($_REQUEST['cnt']) || $_REQUEST['cnt'] == "6" || empty($_REQUEST['cnt'])){?>selected="selected"<?}?>>6</option>
<option value="24" <?if ($_REQUEST['cnt'] == "24"){?>selected="selected"<?}?>>24</option>
<option value="51" <?if ($_REQUEST['cnt'] == "51"){?>selected="selected"<?}?>>51</option>
<option value="75" <?if ($_REQUEST['cnt'] == "75"){?>selected="selected"<?}?>>75</option>
<option value="99" <?if ($_REQUEST['cnt'] == "99"){?>selected="selected"<?}?>>99</option>
</select>




Curl для dadata.ru

07.10.2015 php, php скрипты

       $url = "https://dadata.ru/api/v2/suggest/address"; 
     
        $headers = array( 
            "Content-type: application/json", 
            "Accept: application/json", 
			"Authorization: Token ДЛИННЫЙ_КЛЮЧ" 
        ); 
       
        $ch = curl_init(); 
        curl_setopt($ch, CURLOPT_URL,$url); 
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
        curl_setopt($ch, CURLOPT_TIMEOUT, 60); 
        curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); 
        curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; ru-RU"); 

        curl_setopt($ch, CURLOPT_POST, 1); 
        curl_setopt($ch, CURLOPT_POSTFIELDS, '{ "query": "Москва Площадь Ленина 5 6", "count": 5 }'); 

        $data = curl_exec($ch); 
		
		

        if (curl_errno($ch)) { 
		
			echo  "Error: " . curl_error($ch);			
         
			
        } else { 
		
			curl_close($ch);			
			echo json_decode($data, true);	
        }

phpexcel получение код ячейки по номеру

10.09.2015 php скрипты

function num2alpha($n)
{
    for($r = ""; $n >= 0; $n = intval($n / 26) - 1)
    $r = chr($n%26 + 0x41) . $r;
    return $r;
}

function alpha2num($a) {
    $l = strlen($a);
    $n = 0;
    for($i = 0; $i < $l; $i++)
        $n = $n*26 + ord($a[$i]) - 0x40;
    return $n-1;
}
$col = num2alpha(0); // A
$col = alpha2num('B'); // 1

Настройка звонков bitrix 24

20.08.2015 Bitrix

Примечание: если администратор Битрикс24 разрешил запись разговоров, то звонок будет сохранен в папке Телефония: записи звонков общего диска.

Пользователь коробочной версии Битрикса24
https://dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=48&LESSON_ID=4878&LESSON_PATH=3918.4635.2699.4878

Бизнес процессы

18.08.2015 Bitrix

Полезные ссылки
Бизнес-процессы PHP код https://dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=57&LESSON_ID=3806&LESSON_PATH=5442.5446.5035.5041.3806
Действия PHP код https://dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=41&LESSON_ID=3806
Примеры работы с выражениями http://dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=57&LESSON_ID=3817
Добавление информации в инфоблок из бизнес-процесса https://dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=57&LESSON_ID=5368
Бизнес-процессы для разработчика https://dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=43&CHAPTER_ID=04567&LESSON_PATH=3913.4567
Действия для разработчиков https://dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=57&CHAPTER_ID=04794&LESSON_PATH=5442.4567.4794
Создание собственных действий https://dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=43&CHAPTER_ID=04946
Пример создания действия Запись в лог https://dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=43&LESSON_ID=2903
=Замена выражений {=OLOLOLO:ololo} тут — CBPActivity->GetRealParameterValue  http://bxapi.ru/src/?module_id=bizproc&name=CBPActivity::GetRealParameterValue

Для дебага в БП в схеме php код вставить

echo "<pre>", print_r( $_REQUEST ), "</pre>";
echo "-----<br />";
echo "<pre>", print_r( $this ), "</pre>";
exit;

BitrixVM настройка почты

13.08.2015 Bitrix

Полезные ссылки
https://dev.1c-bitrix.ru/learning/course/?COURSE_ID=37&LESSON_ID=6537&LESSON_PATH=3908.6488.6516.6537
http://dev.1c-bitrix.ru/learning/course/?COURSE_ID=41&LESSON_ID=2946
http://dev.1c-bitrix.ru/community/forums/forum32/topic64738/?sphrase_id=5936997&PAGEN_1=2
https://dev.1c-bitrix.ru/learning/course/?COURSE_ID=32&LESSON_ID=6689
http://dev.1c-bitrix.ru/community/webdev/user/60622/blog/10957/

# smtp account configuration for default 
account default 
logfile /home/bitrix/msmtp_default.log 
host smtp.yandex.ru 
port 25 
from user@host.ru 
keepbcc on 
auth on 
user user@host.ru 
password ******* 
tls on 
tls_certcheck off 
/*
вот с этим у меня работает, конечно user@host.ru надо на вашего поменять и пароль не звездочки а действующий пароль от юзера, плюс важный момент под юзером от которого будете слать почту обязательно надо зайти первый раз и заполнить все данные профиля иначе как ни юзай почту не заработает без персональных данных.
*/

Отсюда http://dev.1c-bitrix.ru/community/forums/messages/forum32/topic64738/message349409/#message349409

Настройка Postfix для отправки почты

Настройка почты на Linux для bitrix

Настройка bitrixvm exim

По порядку, как это делаю я, наверняка можно проще, но уж как привык. 

в /etc/php.d/bitrixenv.ini 

строку sendmail_path = msmtp -t -i меняем на sendmail_path = sendmail -t 

в конфиге apache /etc/httpd/bx/conf/ для нужного virtualhost прописываем php_admin_value sendmail_path "sendmail -t -f email@www.ru" 

email@www.ru меняем на нужный емейл с которого должна уходить почта 


Затем идем в конфиг exim /etc/exim/exim.conf 

находим строку hostlist relay_from_hosts = 127.0.0.1 
сразу после нее дописываем trusted_users = bitrix 

Затем перезагружаем apache и exim 

/etc/init.d/httpd restart 
/etc/init.d/exim restart 

и можно проверять хождение почты. 

Внимание, для нормальной работы почты в такой конфигурации как минимум необходимо прописать PTR запись, попросите хостера, как правило не отказывают.

#ssh работа с файлами и разделами

22.06.2015 console

Директории
$ mkdir название_каталога Создание каталога
$ rm -rf название_каталога Удаление каталога
файлы
$ > имя_файла.php Создание файла
$ rm -rf имя_файла.php Удаление файла
$ vi имя_файла.php Редактирование файла
Для редактирования файла нажать кнопку i,
после редактирования нажать [esc] потом :wq + [enter]
:w + [enter] сохранениe изменений
:q! + [enter] выйти без сохранения изменений
:set nu + [enter] нумеровать строки

 

Инфа о vi взял отсюда http://lostop.ru/page/59/

sudo find -type f -exec chown ololii {} +

//  type f — files

// type d — dir

Инструменты для проверки мобильной версии сайта

27.05.2015 Bitrix

Инструменты для проверки мобильной версии сайта

http://gyazo.com/9bb3e3fba260570d0338fc8542e194c8