Skip to content

Instantly share code, notes, and snippets.

View sukhikh18's full-sized avatar
💪
Business, Development, Sales, Marketing

Nick Sergeevich sukhikh18

💪
Business, Development, Sales, Marketing
View GitHub Profile
@VSeryoga
VSeryoga / location_bitrix.php
Last active July 31, 2018 09:28
Местоположения Битрикс
<?
$res = \Bitrix\Sale\Location\LocationTable::getList(array(
'filter' => array('=NAME.LANGUAGE_ID' => LANGUAGE_ID, 'TYPE_CODE' => array("VILLAGE", "CITY"), 'NAME_RU' => $_POST["city"]."%"),
'select' => array('*', 'NAME_RU' => 'NAME.NAME', 'TYPE_CODE' => 'TYPE.CODE'),
'limit' => 10
));
while($item = $res->fetch())
{
$loc[$item["ID"]] = $item;
$ids[] = $item["PARENT_ID"];
@vertigra
vertigra / mock-object-conspect.md
Last active March 18, 2024 14:08
Введение в mock-объекты. Классификация

Введение в mock-объекты. Классификация.

Конспект статьи

Часто тестируемый метод может вызывать методы других классов, которые в данном случае тестировать не нужно. Unit-тест потому и называется модульным, что тестирует отдельные модули, а не их взаимодействие. Причем, чем меньше тестируемый модуль – тем лучше с точки зрения будущей поддержки тестов. Для тестирования взаимодействия используются интеграционные тесты, где вы уже тестируете скорее полные use cases, а не отдельную функциональность.

Однако наши классы очень часто используют другие классы в своей работе. Например, слой бизнес логики (Business Logic layer) часто работает с другими объектами бизнес логики или обращается к слою доступа к данным (Data Access layer). В трехслойной архитектуре веб-приложений это вообще постоянный процесс: Presentation layer обращается к Business Logic layer, тот, в свою очередь, к Data Access layer, а Data Access layer – к базе данных. Как же тестировать подобный

@kewogc
kewogc / strip_utf8only.js
Created February 7, 2017 03:33
Javascript remove utf16 charters, emoji, special symbols and others
// remove emoji and all symbols from utf16
String.prototype.strip_utf8only = function () {
function stringToCodePointArray(str) {
var codePoints = [], i = 0, charCode;
while (i < str.length) {
charCode = str.charCodeAt(i);
if ((charCode & 0xF800) != 0xD800) { // https://mathiasbynens.be/notes/javascript-encoding
codePoints.push(String.fromCharCode(charCode));
}
++i;
@solancer
solancer / htaccess.expires.headers
Created December 13, 2016 21:01
htaccess expires headers
<IfModule mod_expires.c>
ExpiresActive on
ExpiresDefault "access plus 1 month"
# CSS
ExpiresByType text/css "access plus 1 year"
# Data interchange
ExpiresByType application/atom+xml "access plus 1 hour"
@wpupru
wpupru / Gists for SublimeText3
Created September 23, 2016 16:36
Настройка GitHub Gist в sublime text 3
Настройка GitHub Gist в sublime text 3
Первым делом нам нужно сгенерировать token.
Переходим на свой гитхаб, идем в settings и там в пункте Applications жмем Generate new token
Далее называем его как угодно и выбираем только один пункт gist и жмем генерировать.
Теперь устанавливаем полученный token в preferences => Package Settings => Gits => Settings-Default
Вторым пунктом, настраиваем комбинацию клавиш
Переходим preferences => Package Settings => Gits => Key Bindings-user
И изменяем как нам удобно, вот мой пример
@lukecav
lukecav / add-to-cart.php
Last active March 25, 2024 06:59
Display Product Variations in the Shop Loop - With Conditional Apply Filter Logic
<?php
/**
* Custom Loop Add to Cart.
*
* Template with quantity and ajax.
*/
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly.
global $product;
@parmentf
parmentf / GitCommitEmoji.md
Last active June 18, 2024 08:33
Git Commit message Emoji
@spalladino
spalladino / mysql-docker.sh
Created December 22, 2015 13:47
Backup and restore a mysql database from a running Docker mysql container
# Backup
docker exec CONTAINER /usr/bin/mysqldump -u root --password=root DATABASE > backup.sql
# Restore
cat backup.sql | docker exec -i CONTAINER /usr/bin/mysql -u root --password=root DATABASE
@mamchenkov
mamchenkov / monolog.php
Last active January 5, 2022 09:31
Example use of Monolog logger
<?php
// Before: composer require monolog/monolog
// composer autoloader
require_once 'vendor/autoload.php';
// Shortcuts for simpler usage
use \Monolog\Logger;
use \Monolog\Formatter\LineFormatter;
use \Monolog\Handler\StreamHandler;
@growdev
growdev / gist:3e084f833a3f27bf54af
Created October 14, 2014 14:10
Getting WooCommerce Cart Subtotal
<?php
add_action('woocommerce_cart_updated', 'growdev_woocommerce_cart_updated', 90);
function growdev_woocommerce_cart_updated ( $cart ){
// output subtotal
error_log( "subtotal: " . WC()->cart->subtotal );
// output the
error_log( "get_cart_subtotal: " . WC()->cart->get_cart_subtotal() );