[Ликбез]

Форма входа
Логин:
Пароль:

Меню сайта


Скрипты и коды для юкоз - Форум аццкого кодера » Если вы пришли за помощью, то Вам сюда... » Скрипт для ЛС в аякс, как сделать для отправки пользователю?

Скрипт для ЛС в аякс, как сделать для отправки пользователю?
[1] Igor [08.03.2012, 23:57]
Есть скрипт для перемещения все ЛС в аякс окно-
Code
/*
  * Личные сообщения в ajax окне
  * by muzons.ru
  *
  */

ajaxPm = {
bHtml:function(data){return data.match(/(?:<body[^>]*?>)([\s\S]+)(?:<\/body>)/i)[0].replace(/<div class="pbarContainer"[^\/]+<\/div><\/div>/,"");},
href:function(href){$.get(href,function(data){$("#pmAJAX").html(ajaxPm.bHtml(data));ajaxPm.size();});},
size:function(){setTimeout(function(){_uWnd.getbyname('i').checksize();},300);},
start:function(){$.get("/index/14",function(data){new _uWnd('i','Личные Сообщения',666,250,{modal:1,autosize:1,header:0,oncontent:function(){ajaxPm.size();$("#snewmes a").live("click",function(){ajaxPm.size();});$("#pmAJAX a").live("click",function(){var h=this.href;if(h.indexOf("/index/14")!=-1){_uWnd.setTitle('i',this.innerHTML.replace(/<[^<]*?>/g,""));ajaxPm.href(h);return false;}});}},'<div id="pmAJAX">'+ajaxPm.bHtml(data)+'</div>');});}
}

и кнопка для вызова этого скрипта -
Code
<a href="$_PM_READ_URL$" onclick="ajaxPm.start();return false;">Читать ЛС</a>

Все работает отлично, но если перейти на страницу другого пользователя и нажать на кнопку "Отправить ЛС" не работает.
Окно открывается, но не то что надо. Выводится список ЛС, а надо отправить ЛС.
Я уже создал некий скрипт для отправки ajaxPm2, при нажатии "Отправить ЛС" открывалась форма для отправки, но поле "Получатель заполнено не было, хотя там должен был бы быть ник пользователя к которому адресовано письмо.
Вот скриншоты если не ясно -

Прикрепления: 7253981.jpg (18.1 Kb) · 5293864.jpg (35.4 Kb)
[2] likbezz [09.03.2012, 00:10]
Igor,
Quote (Igor)
Вот скриншоты если не ясно -

Ты ссылку на сайт давай, и тестовый логин / пароль, если не юНет )
...
[3] Igor [09.03.2012, 00:16]
likbezz,В ЛС

Добавлено (09.03.2012, 00:16)
---------------------------------------------
И еще - как изменить цвет ссылок? В ксс все нормально, но ссылки синие.

[4] likbezz [09.03.2012, 01:01]
Igor,
Quote (Igor)
И еще - как изменить цвет ссылок? В ксс все нормально, но ссылки синие.

Code
div.myWinCont a{color:#F00;}

...
[5] Igor [09.03.2012, 01:40]
likbezz, А что там с ответом?
[6] likbezz [09.03.2012, 12:31]
Igor,
Quote (Igor)
А что там с ответом?

Сделаю - напишу, ты не волнуйся )
[7] Igor [10.03.2012, 01:19]
likbezz, ну блин...я уже три дня бошку ломаю. плз сделай побыстрей.

Добавлено (10.03.2012, 01:05)
---------------------------------------------
likbezz, Все, уже не надо. Уже поставил такой скрипт -

Code

var ucodes = {
  ls: function (pmuser) {
   new _uWnd('pmsend','Отправка сообщения', 502, 250, {
    alert: 1,
    modal: 1,
    resize: 1,
    nomove: 1,
    fadespeed: 500,
    maxh: 425,
    align: 0,
                         header: 1,
                         popup: 1,
    oncontent: function () {if(pmuser) $('#PMtoUser').attr('value',pmuser);}
   },
          '<div class="brucpmtopl"><div class="optblockpmtop" id="bodypmsend"><input id="PMtoUser" type="hidden" value=""><div style="margin: 0px 0px 10px 0px;">Тема: <input id="subject" style="width: 480px" type="text"></div><div>Текст сообщения:<textarea onkeypress="ucodesru.ctrpost(event);" id="ucodesmessagepm" style="width: 480px"></textarea></div><input type="button" value="Отправить сообщение" id="ucodespostmessagepm" onclick="ucodes.send();">   <span id="st"></span></div></div>');
  },
  send: function () {
   $("#ucodespostmessagepm").attr({disabled: 1, value: "Отправить сообщение"});
   $("#st").html(' Р�дёт отправка...');
   s = $('#PMtoUser').val();
   subject = $('#subject').val();
   message = $('#ucodesmessagepm').val();
   $.get("/index/14-0-0-1", function (pm) {
    ssid = $("input[name='ssid']", pm).val();
    if ($("#secuImg", pm).size() > 0) {
     imgsec = $("#secuImg", pm).clone();
     seckey = $("input[name='seckey']", pm).val();
     new _uWnd('cap', 'РљРѕРґ СЃ картинки', 300, 80, {
      autosize: 0,
      modal: 1,
      oncontent: function () {
       $("#capImgSpan").html(imgsec);
       $("#capcode").focus();
      }
     },
     '<span id="capImgSpan"></span> <input type="text" id="capcode" onkeyup="ucodes.sendsec()" maxlength="5">');
    } else {
    $.post("/index", {
     s: s,
     subject: subject,
     message: message,
                         ssid: ssid,
     a: 18
     },
     function (re) {
     var rTxt = $($(re).text()).text();
     if(rTxt.indexOf("успешно") > -1) {
     setTimeout('_uWnd.close("pmsend")', 500);
     _uWnd.alert(rTxt, 'Внимание', {
      w: 225,
      h: 75
     });
     } else {
     _uWnd.alert(rTxt, 'Внимание', {
      w: 225,
      h: 75
     });
     }
     });
    }
    $("#ucodespostmessagepm").attr({disabled: 0, value: "Отправить сообщение"});
    $("#st").empty();
    $("#ucodesmessagepm").empty();
   });
  },
  sendsec: function () {
   var code = $("#capcode").val();
   if (code.length == 5) {
    $.post("/index", {
     s: s,
     subject: subject,
     message: message,
     code: code,
                        ssid: ssid,
     seckey: seckey,
     a: 18
    },
    function (re) {
     var rTxt = $($(re).text()).text();
     if(rTxt.indexOf("успешно") > -1) {
     setTimeout('_uWnd.close("pmsend")', 500);
     _uWnd.close('cap');
     _uWnd.alert('Сообщение отправлено', 'Успех', {
      w: 225,
      h: 75
     });
     } else {
      if(rTxt.indexOf("РєРѕРґ Р±") > -1) {
      $('#secuImg').click();
      } else {
      _uWnd.close('cap');
      _uWnd.alert(rTxt, 'Внимание', {
       w: 225,
       h: 75
      });
      }
     }
    });
    $("#ucodespostmessagepm").attr({disabled: 0, value: "Отправить сообщение"});
    $("#st").empty();
    $("#ucodesmessagepm").empty();
   }
  },
  ctrpost: function (e) {
   e = e || window.event;
   if (e.keyCode == 10 || e.ctrlKey && e.keyCode == 13) ucodesru.postPmanswer();
  }
};

Только как в нем прописать ссылку на "Мои сообщения"? И как сюда смайлы вставить?

Добавлено (10.03.2012, 01:19)
---------------------------------------------
likbezz, и, кстати, цвет не изменился. Как цвет ссылок в окне изменить, он у меня синий.

[8] likbezz [10.03.2012, 01:33]
Igor,
Quote (Igor)
Только как в нем прописать ссылку на "Мои сообщения"? И как сюда смайлы вставить?

Редактированием самого скрипта, то бишь не очень удобно. Я это про смайлы.
Quote (Igor)
likbezz, и, кстати, цвет не изменился. Как цвет ссылок в окне изменить, он у меня синий.

Попробуй так:
Code
div.myWinCont a{color:#F00!important;}

...
[9] Igor [10.03.2012, 17:12]
likbezz,Только как в нем (в скрипте) прописать ссылку на "Мои сообщения"?
Quote (likbezz)
Редактированием самого скрипта, то бишь не очень удобно. Я это про смайлы.

Ну хоть в каком направлении их делать? Я и фреймом пробовал и просто код тыкал.
[10] likbezz [10.03.2012, 18:44]
Igor,
Quote (Igor)
Только как в нем (в скрипте) прописать ссылку на "Мои сообщения"?

Ну как понять “как” - кодом, HTML-кодом? как ещё...
Вы не знаете как написать ссылку? Вот так:
Code
<a href="#">#</a>

... Вместо # - свои значения - ссылка и надпись.
...
Quote (Igor)
Ну хоть в каком направлении их делать?

Открыть личные сообщения и скопировать код таблицы смайлов. Вставить в нужное место.
.. Как ещё объяснить? ...
[11] Igor [10.03.2012, 18:57]
likbezz, А какой код смайлов? И куда вставлять? biggrin cool

Добавлено (10.03.2012, 18:57)
---------------------------------------------

Quote (likbezz)
<a href="#">#</a>

Гениально! smile . Я имел ввиду ссылку на открытие аякс окна в аякс окне, но уже все - сам сделал.
[12] likbezz [10.03.2012, 19:20]
Igor,
Quote (Igor)
А какой код смайлов?

Открой исходник и посмотри.
Quote (Igor)
И куда вставлять?

Туда, где нужны смайлы, в скрипт, естественно.

Quote (Igor)
Гениально!

Всё гениальное просто)
...
Quote (Igor)
Я имел ввиду ссылку на открытие аякс окна в аякс окне, но уже все - сам сделал.

Ну вот видишь) - она точно такая же, как и ссылка открытия аякс окна из любого другого места. Абсолютно такая же.
...
[13] Igor [10.03.2012, 19:30]
likbezz, Смотрел исходник, поставил, результат - аякс не открывается.
[14] likbezz [10.03.2012, 19:53]
Igor,
Quote (Igor)
результат - аякс не открывается.

Кавычки (одинарные) нужно экранировать обратным слешем - у тебя же исходник скрипта - посмотрел бы как это делается. Переносов строки тоже не должно быть.
...
[15] Igor [10.03.2012, 20:18]
likbezz,
Quote (likbezz)
экранировать обратным слешем

Не понял smile
Quote (likbezz)
Кавычки (одинарные)

Это "(" или "{" или "<"?

Спасибо.
Quote (likbezz)
Переносов строки тоже не должно быть.

В этом то проблема, видимо, я переносил.

Добавлено (10.03.2012, 20:18)
---------------------------------------------
likbezz, Кот смайлов -

Code

<tbody>
<tr>
<td class="sml1" align="center">
<a onclick="emoticon('>(','message');return false;" rel="nofollow" href="javascript://">
<img title="angry" src="http://s44.ucoz.net/sm/1/angry.gif" style="margin:0;padding:0;border:0;" alt="">
</a>
</td>
<td class="sml1" align="center">
<a onclick="emoticon(':D','message');return false;" rel="nofollow" href="javascript://">
<img title="biggrin" src="http://s44.ucoz.net/sm/1/biggrin.gif" style="margin:0;padding:0;border:0;" alt="">
</a>
</td>
<td class="sml1" align="center">
<a onclick="emoticon('B)','message');return false;" rel="nofollow" href="javascript://">
<img title="cool" src="http://s44.ucoz.net/sm/1/cool.gif" style="margin:0;padding:0;border:0;" alt="">
</a>
</td>
</tr>
<tr>
<td class="sml1" align="center">
<a onclick="emoticon(':\'(','message');return false;" rel="nofollow" href="javascript://">
<img title="cry" src="http://s44.ucoz.net/sm/1/cry.gif" style="margin:0;padding:0;border:0;" alt="">
</a>
</td>
<td class="sml1" align="center">
<a onclick="emoticon('<_<','message');return false;" rel="nofollow" href="javascript://">
<img title="dry" src="http://s44.ucoz.net/sm/1/dry.gif" style="margin:0;padding:0;border:0;" alt="">
</a>
</td>
<td class="sml1" align="center">
<a onclick="emoticon('^_^','message');return false;" rel="nofollow" href="javascript://">
<img title="happy" src="http://s44.ucoz.net/sm/1/happy.gif" style="margin:0;padding:0;border:0;" alt="">
</a>
</td>
</tr>
<tr>
<td class="sml1" align="center">
<a onclick="emoticon(':(','message');return false;" rel="nofollow" href="javascript://">
<img title="sad" src="http://s44.ucoz.net/sm/1/sad.gif" style="margin:0;padding:0;border:0;" alt="">
</a>
</td>
<td class="sml1" align="center">
<a onclick="emoticon(':)','message');return false;" rel="nofollow" href="javascript://">
<img title="smile" src="http://s44.ucoz.net/sm/1/smile.gif" style="margin:0;padding:0;border:0;" alt="">
</a>
</td>
<td class="sml1" align="center">
<a onclick="emoticon(':o','message');return false;" rel="nofollow" href="javascript://">
<img title="surprised" src="http://s44.ucoz.net/sm/1/surprised.gif" style="margin:0;padding:0;border:0;" alt="">
</a>
</td>
</tr>
<tr>
<td class="sml1" align="center">
<a onclick="emoticon(':p','message');return false;" rel="nofollow" href="javascript://">
<img title="tongue" src="http://s44.ucoz.net/sm/1/tongue.gif" style="margin:0;padding:0;border:0;" alt="">
</a>
</td>
<td class="sml1" align="center">
<a onclick="emoticon('%)','message');return false;" rel="nofollow" href="javascript://">
<img title="wacko" src="http://s44.ucoz.net/sm/1/wacko.gif" style="margin:0;padding:0;border:0;" alt="">
</a>
</td>
<td class="sml1" align="center">
<a onclick="emoticon(';)','message');return false;" rel="nofollow" href="javascript://">
<img title="wink" src="http://s44.ucoz.net/sm/1/wink.gif" style="margin:0;padding:0;border:0;" alt="">
</a>
</td>
</tr>
<tr id="asmltrsS2pW" style="display: none;">
<td id="allSmiles" nowrap="" align="center" colspan="3">
<a onclick="new _uWnd('Sml',' ',-250,-350,{autosize:0,closeonesc:1,resize:0},{url:'/index/35-1-0'});return false;" rel="nofollow" href="javascript://">Все смайлы</a>
</td>
</tr>
</tbody>

Вставил его в скрипт -
Code
var ucodes = {
  ls: function (pmuser) {
   new _uWnd('pmsend','Отправка сообщения', 502, 250, {
    alert: 1,
    modal: 1,
    resize: 1,
    nomove: 1,
    fadespeed: 500,
    maxh: 425,
    align: 0,
                         header: 1,
                         popup: 1,
    oncontent: function () {if(pmuser) $('#PMtoUser').attr('value',pmuser);}
   },
          '<a href="javascript://" onclick="ajaxPm.start();">Мои сообщения</a><br /><br /><div class="brucpmtopl"><div class="optblockpmtop" id="bodypmsend"><input id="PMtoUser" type="hidden" value=""><div style="margin: 0px 0px 10px 0px;">Тема: <input id="subject" style="width:98%" type="text"></div><div>Текст сообщения:<textarea onkeypress="ucodesru.ctrpost(event);" id="ucodesmessagepm" style="width:98%"></textarea></div><input type="button" value="Отправить сообщение" id="ucodespostmessagepm" onclick="ucodes.send();">   <span id="st"></span></div></div><tbody>
<tr>
<td class="sml1" align="center">
<a onclick="emoticon('>(','message');return false;" rel="nofollow" href="javascript://">
<img title="angry" src="http://s44.ucoz.net/sm/1/angry.gif" style="margin:0;padding:0;border:0;" alt="">
</a>
</td>
<td class="sml1" align="center">
<a onclick="emoticon(':D','message');return false;" rel="nofollow" href="javascript://">
<img title="biggrin" src="http://s44.ucoz.net/sm/1/biggrin.gif" style="margin:0;padding:0;border:0;" alt="">
</a>
</td>
<td class="sml1" align="center">
<a onclick="emoticon('B)','message');return false;" rel="nofollow" href="javascript://">
<img title="cool" src="http://s44.ucoz.net/sm/1/cool.gif" style="margin:0;padding:0;border:0;" alt="">
</a>
</td>
</tr>
<tr>
<td class="sml1" align="center">
<a onclick="emoticon(':\'(','message');return false;" rel="nofollow" href="javascript://">
<img title="cry" src="http://s44.ucoz.net/sm/1/cry.gif" style="margin:0;padding:0;border:0;" alt="">
</a>
</td>
<td class="sml1" align="center">
<a onclick="emoticon('<_<','message');return false;" rel="nofollow" href="javascript://">
<img title="dry" src="http://s44.ucoz.net/sm/1/dry.gif" style="margin:0;padding:0;border:0;" alt="">
</a>
</td>
<td class="sml1" align="center">
<a onclick="emoticon('^_^','message');return false;" rel="nofollow" href="javascript://">
<img title="happy" src="http://s44.ucoz.net/sm/1/happy.gif" style="margin:0;padding:0;border:0;" alt="">
</a>
</td>
</tr>
<tr>
<td class="sml1" align="center">
<a onclick="emoticon(':(','message');return false;" rel="nofollow" href="javascript://">
<img title="sad" src="http://s44.ucoz.net/sm/1/sad.gif" style="margin:0;padding:0;border:0;" alt="">
</a>
</td>
<td class="sml1" align="center">
<a onclick="emoticon(':)','message');return false;" rel="nofollow" href="javascript://">
<img title="smile" src="http://s44.ucoz.net/sm/1/smile.gif" style="margin:0;padding:0;border:0;" alt="">
</a>
</td>
<td class="sml1" align="center">
<a onclick="emoticon(':o','message');return false;" rel="nofollow" href="javascript://">
<img title="surprised" src="http://s44.ucoz.net/sm/1/surprised.gif" style="margin:0;padding:0;border:0;" alt="">
</a>
</td>
</tr>
<tr>
<td class="sml1" align="center">
<a onclick="emoticon(':p','message');return false;" rel="nofollow" href="javascript://">
<img title="tongue" src="http://s44.ucoz.net/sm/1/tongue.gif" style="margin:0;padding:0;border:0;" alt="">
</a>
</td>
<td class="sml1" align="center">
<a onclick="emoticon('%)','message');return false;" rel="nofollow" href="javascript://">
<img title="wacko" src="http://s44.ucoz.net/sm/1/wacko.gif" style="margin:0;padding:0;border:0;" alt="">
</a>
</td>
<td class="sml1" align="center">
<a onclick="emoticon(';)','message');return false;" rel="nofollow" href="javascript://">
<img title="wink" src="http://s44.ucoz.net/sm/1/wink.gif" style="margin:0;padding:0;border:0;" alt="">
</a>
</td>
</tr>
<tr id="asmltrsS2pW" style="display: none;">
<td id="allSmiles" nowrap="" align="center" colspan="3">
<a onclick="new _uWnd('Sml',' ',-250,-350,{autosize:0,closeonesc:1,resize:0},{url:'/index/35-1-0'});return false;" rel="nofollow" href="javascript://">Все смайлы</a>
</td>
</tr>
</tbody>');
  },
  send: function () {
   $("#ucodespostmessagepm").attr({disabled: 1, value: "Отправить сообщение"});
   $("#st").html('Идет отправка...');
   s = $('#PMtoUser').val();
   subject = $('#subject').val();
   message = $('#ucodesmessagepm').val();
   $.get("/index/14-0-0-1", function (pm) {
    ssid = $("input[name='ssid']", pm).val();
    if ($("#secuImg", pm).size() > 0) {
     imgsec = $("#secuImg", pm).clone();
     seckey = $("input[name='seckey']", pm).val();
     new _uWnd('cap', 'Код с картинки', 300, 80, {
      autosize: 0,
      modal: 1,
      oncontent: function () {
       $("#capImgSpan").html(imgsec);
       $("#capcode").focus();
      }
     },
     '<span id="capImgSpan"></span> <input type="text" id="capcode" onkeyup="ucodes.sendsec()" maxlength="5">');
    } else {
    $.post("/index", {
     s: s,
     subject: subject,
     message: message,
                         ssid: ssid,
     a: 18
     },
     function (re) {
     var rTxt = $($(re).text()).text();
     if(rTxt.indexOf("успешно") > -1) {
     setTimeout('_uWnd.close("pmsend")', 500);
     _uWnd.alert(rTxt, 'Внимание', {
      w: 225,
      h: 75
     });
     } else {
     _uWnd.alert(rTxt, 'Внимание', {
      w: 225,
      h: 75
     });
     }
     });
    }
    $("#ucodespostmessagepm").attr({disabled: 0, value: "Отправить сообщение"});
    $("#st").empty();
    $("#ucodesmessagepm").empty();
   });
  },
  sendsec: function () {
   var code = $("#capcode").val();
   if (code.length == 5) {
    $.post("/index", {
     s: s,
     subject: subject,
     message: message,
     code: code,
                        ssid: ssid,
     seckey: seckey,
     a: 18
    },
    function (re) {
     var rTxt = $($(re).text()).text();
     if(rTxt.indexOf("успешно") > -1) {
     setTimeout('_uWnd.close("pmsend")', 500);
     _uWnd.close('cap');
     _uWnd.alert('Сообщение отправлено', 'Успех…', {
      w: 225,
      h: 75
     });
     } else {
      if(rTxt.indexOf("код б") > -1) {
      $('#secuImg').click();
      } else {
      _uWnd.close('cap');
      _uWnd.alert(rTxt, 'Внимание', {
       w: 225,
       h: 75
      });
      }
     }
    });
    $("#ucodespostmessagepm").attr({disabled: 0, value: "Отправить сообщение"});
    $("#st").empty();
    $("#ucodesmessagepm").empty();
   }
  },
  ctrpost: function (e) {
   e = e || window.event;
   if (e.keyCode == 10 || e.ctrlKey && e.keyCode == 13) ucodesru.postPmanswer();
  }
};

Ниче не работает - при клике на ссылку аякс не открывается.


Полная версия сайта