HEXFIX 1 05/25/16 08:55 Как-то тут помогали со скриптом, теперь прошу помощи в его исправлении под IPB 4: На тройке в GlobalTemplate перед закрытием body было прописано:<script type="text/javascript"> var ctrlDown = false; var ctrlKey = 17, cKey = 67, psKey = 44; document.observe('dom:loaded', function() { Event.observe(document, 'keydown', function(e) { if (e.keyCode == ctrlKey) ctrlDown = true; if (ctrlDown && e.keyCode == cKey) { new Ajax.Request('/ctrlc.php', { method: 'get', parameters: {member: '{$this->memberData['members_display_name']} IP:{$this->member->ip_address}', place: ' (Copy):{$_SERVER['REQUEST_URI']}' } }); }; }); Event.observe(document, 'keyup', function(e) { if (e.keyCode == ctrlKey) ctrlDown = false; }); Event.observe(document, 'keyup', function(e) { if (e.keyCode == psKey) { new Ajax.Request('/ctrlc.php', { method: 'get', parameters: {member: '{$this->memberData['members_display_name']} IP:{$this->member->ip_address}', place: ' (PrtScr):{$_SERVER['REQUEST_URI']}' } }); }; }); }); </script> В корне сайта лежал сам ctrlc.php, который записывал в текстовый файл ctrlc.log: <?php if(!empty($_GET['member']) && !empty($_GET['place'])) { $safe = htmlspecialchars(preg_replace('/\s/m', '', $_GET['place'])); $handle = fopen('ctrlc.log', 'a'); fwrite($handle, "DATE:".date('d.m.y H:i:s')." UserName:".strval($_GET['member'])." THEME".$safe."\r\n"); fclose($handle); } Если коротко, то скрипт отслеживал нажатия заданный клавиш и записывал имя пользователя, дату, IP и директорию форума, где была нажата клавиша в текстовый файл. После переноса на IPB 4 скрипт перестал работать. Поделиться сообщением Ссылка на сообщение
etc 4 06/01/16 10:44 (изменено) <script> jQuery(function($){ var ctrlDown = false; var ctrlKey = 17, cKey = 67, psKey = 44; $(document).keydown(function(e){ if (e.keyCode == ctrlKey) ctrlDown = true; if (ctrlDown && e.keyCode == cKey) { $.get('{setting="base_url"}ctrlc.php', { member: '{member="name"} IP:{member="ip_address"}', place: ' (Copy):{$_SERVER['REQUEST_URI']}' }); }; }); $(document).keyup(function(e){ if (e.keyCode == ctrlKey) ctrlDown = false; if (e.keyCode == psKey) { $.get('{setting="base_url"}ctrlc.php', { member: '{member="name"} IP:{member="ip_address"}', place: ' (PrtScr):{$_SERVER['REQUEST_URI']}' }); } }); }); </script> Изменено 1 июня 2016 пользователем etc 1 Поделиться сообщением Ссылка на сообщение
HEXFIX 1 06/01/16 14:50 (изменено) Спасибо. Всё записывает в файл, но почему-то после выполнения скрипта с форума перекидывает на url http://www.САЙТ.ru/ctrlc.php?csrfKey=ЦИФРЫИБУКВЫ&member=ИМЯМЕМБЕРА+IP%3AАЙПИШНИКЮЗЕРА&place=+(Copy)УРЛГДЕСРАБОТАЛСКРИПТ Изменено 1 июня 2016 пользователем HEXFIX Поделиться сообщением Ссылка на сообщение
etc 4 06/01/16 15:08 Попробуй заменить {setting="base_url"}ctrlc.php на /ctrlc.php 1 Поделиться сообщением Ссылка на сообщение
HEXFIX 1 06/01/16 15:15 Получилось. Срабатывает еще лучше, чем на тройке, без визуальных излишеств) Большое спасибо! Поделиться сообщением Ссылка на сообщение