Skip to content

Instantly share code, notes, and snippets.

View VitUrzh's full-sized avatar

Vitaliy Urzhumov VitUrzh

View GitHub Profile
@VitUrzh
VitUrzh / AdWords_send_limit
Created April 13, 2020 07:35
Отслеживание остатка бюджета в Google Ads c отправкой уведомлений в Telegram и на почту. Отправляет данные об остатке денежных средств на аккаунтах, привязанных к My Client Center (MCC) с оплатой по предоплате, на почту и в Telegram-бот. Подробнее h
var CONFIG = {
// Указать минимальное количество дней до окончания средств на аккаунте для отправки уведомления.
days : 7,
// Указать почты для отправки уведомлений, через запятую, если больше одной
email : ['email@gmail.com', 'email2@gmail.com'],
// Указать ники/имена кому отправляется письмо, через запятую, если больше одного
names : ['name', 'name2'],
// Помечаем необходимые для отслеживания аккаунты ярлыком, пример - BudgetControl
labelName : ['BudgetControl']
}
@VitUrzh
VitUrzh / sec
Last active November 21, 2018 00:46
https://modzone.ru/blog/2016/04/15/masking-manager-page/ Для реализации этого решения нужно создать плагин на событие OnManagerPageInit. Теперь для того, чтобы попасть на страницу админки, нужно набрать правильный адрес с кодом site.ru/manager/?code=
<?php
switch ($modx->event->name) {
case 'OnManagerPageInit':
// Вариант 1. Сразу задать значение GET параметра.
$code = 2016;
// Вариант 2. Создать системную настройку adminCode и в ней выставить значение
// $code = $modx->getOption('adminCode');
// Тут мы проверяем GET параметр code
if ($modx->user->id == 0 && (!isset($_GET['code']) || $_GET['code'] != $code)) {
@VitUrzh
VitUrzh / gdn-placement-analysis
Created December 4, 2017 08:49 — forked from derekmartinla/gdn-placement-analysis
Find Underperforming Placements & Opportunities On Google Display Network
// This script reviews your GDN placements for the following conditions:
// 1) Placements that are converting at less than $40
// 2) Placements that have cost more than $50 but haven't converted
// 3) Placements that have more than 5K impressions and less than .10 CTR
function main() {
var body = "<h2>Google Display Network Alert</h2>";
body += "<h3>Placements that are converting at less than $40:</h3> " ;
body += "<ul>";
@VitUrzh
VitUrzh / YouTube Channels Cleaner.js
Last active November 26, 2017 20:50
Чистит площадки YouTube от детских каналов
/******************************************
* YouTube Channels Cleaner
*
* Version 2.0
* Date 25.03.2017
*
* Created by: Dmytro Tonkikh
******************************************/
var dataFile = "videoIds.txt";
@VitUrzh
VitUrzh / bad_keywords.js
Last active February 16, 2017 08:05
Скрипт останавливает ключевые слова с низким показателем качества и присваиваем им ярлык, чтобы можно было такие слова потом быстро найти
//Автор: Виталий Уржумов
//email: cpc@urzhumov.ru
//Сайт: www.urzhumov.ru
//Скрипт BadKeywords останавливает ключевые слова с низким показателем качества и присваиваем им ярлык,
//чтобы можно было такие слова потом быстро найти
//значение, меньше которого фразу считать не качественной
var QualityScore = 4;
@VitUrzh
VitUrzh / position_top_control.js
Last active February 11, 2017 11:58
удержание третьего места
//Чтобы скрипт знал с какими компаниями работать, для них нужно добавить ярлык с именем 'scriptCtrl'
//Ярлык с именем "maxCPC15" укажет максимальное значение ставки. В данном случае ставка равна 15
//Желательно запускать каждый час
// Повышающий коэффициент. Т.е. если он равен 1.05 то изменение составит 5%.
var COEFFICIENT = 1.08;
//работать с фразами у которых за определенный период было не более IMPRESSIONS показов
var IMPRESSIONS = 5;
@VitUrzh
VitUrzh / positionControl.js
Last active February 11, 2017 11:53
Удержание позиции с ограничением ставки.
//Чтобы скрипт знал с какими компаниями работать, для них нужно добавить ярлык с именем 'scriptCtrl'
//Ярлык с именем "maxCPC15" укажет максимальное значение ставки. В данном случае ставка равна 15
//ярлык targetPosition2.4 указывает, что надо удерживать среднюю позиция 2.4
// Допустимое отклонение для средней позиции. Т.е. если допустимое отклонение = 0.1 а целевая позиция = 2, то скрипт не затронет ключи с позицией 1.9 и 2.1.
var TOLERANCE = 0.2;
// Множитель для изменения ставок. Т.е. если он равно 1.05 то ставки опустятся или поднимутся на 5%.
var BID_ADJUSTMENT_COEFFICIENT = 1.02;
@VitUrzh
VitUrzh / metrica.js
Last active September 18, 2019 15:46
Передача в яндекс метрику уникальный данные о пользователе. Нужно для выявления скликивания в директе.
<!-- Yandex.Metrika counter -->
<script type="text/javascript">
var BrowserDetect = {
init: function () {
this.browser = this.searchString(this.dataBrowser) || "--";//An unknown browser
this.version = this.searchVersion(navigator.userAgent) || this.searchVersion(navigator.appVersion) || "--";//an unknown version
this.OS = this.searchString(this.dataOS) || "--";//an unknown OS
},
searchString: function (data) {
@VitUrzh
VitUrzh / positionControl.js
Last active October 26, 2018 11:32
Удержание позиции. Обновление. Быстрее вверх, медленней вниз
//Чтобы скрипт знал с какими компаниями работать, для них нужно добавить ярлык с именем 'SC' - script control
//Ярлык с именем "maxCPC15" укажет максимальное значение ставки. В данном случае ставка равна 15
//ярлык targetPosition2.4 указывает, что надо удерживать среднюю позиция 2.4
// Допустимое отклонение для средней позиции. Т.е. если допустимое отклонение = 0.1 а целевая позиция = 2, то скрипт не затронет ключи с позицией 1.9 и 2.1.
var TOLERANCE = 0.2;
// Множитель для изменения ставок. Т.е. если он равно 1.05 то ставки опустятся или поднимутся на 5%.
// На повышение обычно множитель больше, так как важнее быть выше, чем ниже
var BID_ADJUSTMENT_COEFFICIENT_up = 1.035;