Skip to content

Instantly share code, notes, and snippets.

@aclips
aclips / planner.js
Created September 13, 2018 12:45
BX js planner
//\Bitrix\Main\Page\Asset::getInstance()->addJs('/bitrix/js/crm/activity_planner.min.js');
var planner = new BX.Crm.Activity.Planner();
planner.showEdit({
ID : activityid
});
@aclips
aclips / randomUser.php
Created November 23, 2018 06:22
Bitrix случайная выборка пользователя
<?
$users = \Bitrix\Main\UserTable::getList([
"order" => [
"RAND" => "asc"
],
'runtime' => array(
new \Bitrix\Main\Entity\ExpressionField('RAND', 'RAND()')
),
"limit" => 10
])->fetchAll();
@aclips
aclips / Emoji.php
Created April 25, 2019 09:05
Удаление Emodji из текста
<?php
class Emoji
{
const EMOJI = [
"\xF0\x9F\x91\xA8\xE2\x80\x8D\xE2\x9D\xA4\xEF\xB8\x8F\xE2\x80\x8D\xF0\x9F\x92\x8B\xE2\x80\x8D\xF0\x9F\x91\xA8",
"\xF0\x9F\x91\xA9\xE2\x80\x8D\xE2\x9D\xA4\xEF\xB8\x8F\xE2\x80\x8D\xF0\x9F\x92\x8B\xE2\x80\x8D\xF0\x9F\x91\xA9",
"\xF0\x9F\x91\xA8\xE2\x80\x8D\xF0\x9F\x91\xA9\xE2\x80\x8D\xF0\x9F\x91\xA6\xE2\x80\x8D\xF0\x9F\x91\xA6",
"\xF0\x9F\x91\xA8\xE2\x80\x8D\xF0\x9F\x91\xA8\xE2\x80\x8D\xF0\x9F\x91\xA7\xE2\x80\x8D\xF0\x9F\x91\xA6",
"\xF0\x9F\x91\xA8\xE2\x80\x8D\xF0\x9F\x91\xA9\xE2\x80\x8D\xF0\x9F\x91\xA7\xE2\x80\x8D\xF0\x9F\x91\xA6",
@aclips
aclips / example.php
Last active February 5, 2020 07:51
Bitrix24 get semantic deal stages (STAGE_SEMANTIC_ID)
<?
\Bitrix\Main\Loader::includeModule('crm');
$categoryID = 0;
$stages = \CCrmDeal::GetStages($categoryID);
$semanticStages = array_map(function($item) use ($categoryID){
$stage = $item['STATUS_ID'];
$semanticTitle = \CCrmDeal::GetStageSemantics($stage, $categoryID);
@aclips
aclips / decoder.sh
Created March 29, 2022 16:03
wav to mp3 converter using lame
#!/bin/bash
find . -iname "*.wav"|while read fname; do
converted_name=${fname/.wav/.mp3}
if ! [ -f "$converted_name" ]; then
echo "does not exist [$converted_name]"
lame "$fname"
fi
@aclips
aclips / function.php
Last active April 26, 2022 07:46
Склонение существительных после числительных
<?php
/**
* Склонение существительных после числительных.
*
* @param string $value Значение
* @param array $words Массив вариантов, например: array('товар', 'товара', 'товаров')
* @param bool $show Включает значение $value в результирующею строку
* @return string
*/
public function num_word($value, $words, $show = true)
@aclips
aclips / add_tasks_checklist.php
Last active August 24, 2023 19:40
Bitrix24 добавление чеклиста в задачу
<?php
use Bitrix\Main\Loader;
use Bitrix\Tasks\CheckList\Task\TaskCheckListFacade;
Loader::IncludeModule('tasks');
$taskId = 104;
$userId = 1;
@aclips
aclips / example.js
Created August 18, 2023 18:27
Запрет на изменение полей в профиле пользователя Bitrix24
let codes = [
'NAME',
'LAST_NAME',
'SECOND_NAME'
]
BX.addCustomEvent('BX.UI.EntityConfigurationManager:onInitialize', (e) => {
let id = e.getId()
@aclips
aclips / example.js
Created August 21, 2023 07:45
Отключение действий в канбане bitrix24
(function () {
BX.addCustomEvent('Kanban.Column:onAddedToGrid', (e) => {
e.canAddItem = false
e.canEdit = false
e.droppable = false
e.dragTargetColumn = false
e.isTotalFrozen = true
e.grid.canAddColumn = false
e.grid.canEditColumn = false
@aclips
aclips / example.js
Created August 21, 2023 09:35
Получение значений полей элементов CRM Bitrix24
(function () {
BX.addCustomEvent('bx.crm.entityeditor:oninit', (event, context) => {
let fields = context.model.getData()
console.log(fields)
})
})()