• Страница 1 из 1
  • 1
Модератор форума: JonMagon  
Сообщество uCoz » Вебмастеру » JavaScript, Flash и прочие технологии » Скрипт ЛС
Скрипт ЛС
WelcomeToHell
Сообщений: 1
Репутация: 0

Сообщение # 1 | 00:32:25
Здравствуйте. Если ли такой скрипт [Когда пользователь регистрируется на сайте и ему сразу приходит ЛС с каким-то текстом] ?
starlayt
Сообщений: 18
Репутация: 7

Сообщение # 2 | 00:58:46
Есть идея как это сделать: использовать спецтег, отображающий кол-во дней на сайте. Блок if проверяет это число, если оно 0 - отправляет сообщение, делает запись в cookies. Все это помещено в другой if, который проверяет cookies (чтобы не отправлять много раз). Я пока только учу JavaScript, надеюсь кто-нибудь из форумчан напишет smile
NeoGame12
Сообщений: 51
Репутация: 6

Сообщение # 3 | 10:39:09
WelcomeToHell, где-то точно был такой скрипт, но он на php. Есть конечно версия и без него, но тогда пользователю не будет приходить ЛС, а просто будет показыватся уведомление.
Сообщение отредактировал NeoGame12 - Воскресенье, 13 Янв 2013, 18:25:10
starlayt
Сообщений: 18
Репутация: 7

Сообщение # 4 | 21:33:56
Вот кстати уведомление на JS проще сделать. А так либо он сам себе будет лс отправлять, либо специальная учетка (ее могут стырить).
Aura
Сообщений: 33
Репутация: 42

Сообщение # 5 | 04:53:22
Буду благодарна за скрипт. smile
starlayt
Сообщений: 18
Репутация: 7

Сообщение # 6 | 01:51:45
Ок, написал. Вставляем перед </body> на главной странице, или где нам надо чтобы показывалось окно:
Код
<?if($USER_LOGGED_IN$)?><script language="javascript">
var date = new Date();
var day = date.getDate();
var year = date.getFullYear();
var month = date.getMonth();
var i = 0;
day++;
if (get_cookie("opening")==null) {i = 0;} else {a = get_cookie("opening"); set_cookie("opening", a, year, month, day, "/");}
setTimeout('newuser()', 1000); //таймер до открытия окна в миллисекундах
function set_cookie ( name, value, exp_y, exp_m, exp_d, path, domain, secure )
{
     var cookie_string = name + "=" + escape ( value );
       
     if ( exp_y )
     {
       var expires = new Date ( exp_y, exp_m, exp_d );
       cookie_string += "; expires=" + expires.toGMTString();
     }
       
     if ( path )
           cookie_string += "; path=" + escape ( path );
       
     if ( domain )
           cookie_string += "; domain=" + escape ( domain );
        
     if ( secure )
           cookie_string += "; secure";
        
     document.cookie = cookie_string;
}
function get_cookie ( cookie_name )
{
     var results = document.cookie.match ( '(^|;) ?' + cookie_name + '=([^;]*)(;|$)' );
       
     if ( results )
       return ( unescape ( results[2] ) );
     else
       return null;
}
function newuser() {
if (get_cookie("opening")==null) {set_cookie("opening", "0", year, month, day, "/");}
if (!$USER_REG_DAYS$=="0"|get_cookie("opening")<=0) { //первое число - кол-во днец после регистрации (которое юзер считается новичком), второе - кол-во показов окна (0 - 1)
new _uWnd('ajax','Для новых пользователей','350','400',{autosize:false,modal:true,close:true,header:true,nomove:false,fixed:true},'<h2>Привет, $USERNAME$!</h2>Тут будет текст для новых пользователей.'); //350 - ширина, 400 - длинна, заголовок без html, в тексте html и спецоператоры юкоз применять можно (скобки использовать только двойные), modal - затемнение (true или false), fixed - прокручивается вместе со страницей, nomove - разрешение на перемещение
i++;
set_cookie("opening", i, year, month, day, "/");
}
}
</script><?endif?>

Скрипт получился жирный, поэтому его лучше убрать в отдельный файл. Для этого копируем скрипт, зажатый между тегами <script language="javascript> и </script>, создаем файл *.txt, через блокнот копируем туда код и сохраняем, меняем расширение на *.js, заливаем на сайт. Перед </body> вставляем это:
Код
<?if($USER_LOGGED_IN$)?><script language="javascript" src="путь к вашему файлу"></script><?endif?>

Можно было проще, но тут похоже только изображения можно прикреплять sad
Ну и если будете эксперементировать, то чтобы скрипт снова срабатывал без существенного ковыряния в нем и выжидания дня, нужно удалить созданное значение cookie, для этого CTRL+U (если у вас опера, в других браузеров без плагинов код не редактируется), после <head> вставляем такой скрипт:
Код
<script language="javascript">
setTimeout('delete_cookie("opening")', 1);
function delete_cookie ( cookie_name )
{
     var cookie_date = new Date ( );  // Текущая дата и время
     cookie_date.setTime ( cookie_date.getTime() - 1 );
     document.cookie = cookie_name += "=; expires=" + cookie_date.toGMTString();
}
</script>

Или вставляем этот скрипт в шаблоне вместо скрипта показа, но тогда у тех кто зайдет на сайт это значение удалится тоже, что приведет к еще одному срабатыванию скрипта показа (если его потом вставить).
Сообщение отредактировал starlayt - Вторник, 15 Янв 2013, 02:50:18
Aura
Сообщений: 33
Репутация: 42

Сообщение # 7 | 06:31:32
starlayt, Замечательно. Была бы возможность, давала бы каждый день + к репутации, за такие вклады к работе. smile

П.С. Как с вами можно связаться? Напишите, пожалуйста, в лс.
Dima(cs)
Сообщений: 4
Репутация: 0

Сообщение # 8 | 23:26:35
starlayt, Спасибо.
Сообщество uCoz » Вебмастеру » JavaScript, Flash и прочие технологии » Скрипт ЛС
  • Страница 1 из 1
  • 1
Поиск: