Skip to content

Instantly share code, notes, and snippets.

View bizmedia's full-sized avatar

Anatoly Tukov bizmedia

  • Russia, Moscow
View GitHub Profile
@bizmedia
bizmedia / gist:9254623
Created February 27, 2014 17:17
Получить Логин и Email пользователя 1С-Битрикс
<?
global $USER;
// Получить Логин и Email пользователя 1С-Битрикс
$login = $USER->GetLogin();
$email = $USER->GetEmail();
//
// см: https://dev.1c-bitrix.ru/api_help/main/reference/cuser/getid.php
?>
@bizmedia
bizmedia / gist:9254770
Last active April 2, 2016 13:47
Подписать всех пользователей 1С-Битрикс на рассылку через Bitrix API
<?
/***
* Подписать всех пользователей 1С-Битрикс на рассылку через Bitrix API
* чтобы исключить конкретного пользователя, нужно создать пользовательское поле UF_UNSUBSCRIBED типа CHECKBOX
* если в UF_UNSUBSCRIBED стоит галочка т.е. "UF_UNSUBSCRIBED" => true - то эту запись будем игнорировать
**/
CModule::IncludeModule('iblock');
CModule::IncludeModule("subscribe");
$cUser = new CUser;
$sort_by = "ID";
@bizmedia
bizmedia / D7_module_cheatsheet.md
Created September 22, 2017 23:15 — forked from pafnuty/D7_module_cheatsheet.md
Памятка по сборке модуля на D7

Памятка по сборке модуля на D7

  1. Склонировать d7dull в папку /local/modules

  2. Заменить названия во всех файлах с учётом регистра maycat — ваш ник, разрешены ТОЛЬКО латинские буквы d7dull — название модуля Для этого нужно пройтись контекстным поиском по всей папке и внести изменения + переименовать файл в папке admin в соответствии с названияем модуля

  3. Продумать структуру классов и завести их в папке lib/ (подробнее о приёмах организации структуры - смотри видео) С помощью include.php подключить автолоад созданным классам

# Authorization for a CMS with GraphQL Permission Queries
## TABLE OF CONTENTS
- [Authorization Design Patterns]()
- [User Roles for Broad Authorization Rules]()
- [Relation-based permissions for complete control]()
- [Elevated Access for Owners]()
- [Conclusion]()
@bizmedia
bizmedia / index.jsx
Created January 4, 2019 02:13 — forked from avinmathew/index.jsx
Multiple layouts with React Router v4
import React from "react"
import { Route, Switch } from "react-router-dom"
const AppRoute = ({ component: Component, layout: Layout, ...rest }) => (
<Route {...rest} render={props => (
<Layout>
<Component {...props} />
</Layout>
)} />
)
@bizmedia
bizmedia / reconnect.js
Created January 17, 2019 08:54 — forked from carlhoerberg/reconnect.js
How to build reconnect logic for amqplib
var amqp = require('amqplib/callback_api');
// if the connection is closed or fails to be established at all, we will reconnect
var amqpConn = null;
function start() {
amqp.connect(process.env.CLOUDAMQP_URL + "?heartbeat=60", function(err, conn) {
if (err) {
console.error("[AMQP]", err.message);
return setTimeout(start, 1000);
}
import SwiftUI
class MyModel: ObservableObject {
@Published var attempted: Bool = false
@Published var firstname: String = "" {
didSet { updateDismissability() }
}
@Published var lastname: String = "" {
@bizmedia
bizmedia / tokens.md
Created June 7, 2020 02:36 — forked from zmts/tokens.md
Про токены, JSON Web Tokens (JWT), аутентификацию и авторизацию. Token-Based Authentication

Про токены, JSON Web Tokens (JWT), аутентификацию и авторизацию. Token-Based Authentication

Last major update: 20.04.2020

  • Что такое авторизация/аутентификация
  • Где хранить токены
  • Как ставить куки ?
  • Процесс логина
  • Процесс рефреш токенов
  • Кража токенов/Механизм контроля токенов