Главная » 2011 » Январь » 4 » "Стена пользователя" для uCoz
21:30
"Стена пользователя" для uCoz

Установка:
Для начала активируем модуль "Доска объявлений". Создайте одну категорию с любым названием.Если уже есть материалы с категориями, то удалите всё и добавьте также одну категорию. Настраиваем модуль по скригшотам:

Обязательно уберите модерацию в модуле "Доска объявлений" для пользователей.

Далее заходим в вид комментариев и в самое начало ставим:

Code
  
  <table width="100%">  
  <tr>  
  <td align="left" valign="top">  
  <a href="$PROFILE_URL$"><img src="$USER_AVATAR_URL$" border="0" style="max-width: 50px;"></a><a href="$PROFILE_URL$"><img src="http://ucodes.ru/images/noava.png" border="0" style="max-width: 50px;"></a>  
  </td>  
  <td width="100%" align="left" valign="top">  
  <div style="background:#f7f7f7;border-top:1px solid #e0e0e0;border-bottom:1px solid #f0f0f0;padding-bottom:10px;padding-left:10px;padding-right:10px;padding-top:5px;"><div style="float:left;"><a href="$PROFILE_URL$"><b><font color="#666666">$USERNAME$</font></b></a><br>$DATE$ <b>в</b> $TIME$</div><div style="float:right;"><img src="http://ucodes.ru/upload/icons/del_id.png" style="cursor:pointer;" onclick="delcom('$ID$')"></div><br><br></div>  
  <div style="padding:5px;">$MESSAGE$</div>  
  </td>  
  </tr>  
  </table>  

  <br>  
  

и в самый конец:

Code

Прошу обратить внимание, что удалять в виде комментариев ничего не надо.

Далее переходим на страницу материала и комментариев к нему "Доски объявлений" и всё заменяем на:

Code
<div class="owallru"><div align="right"><span id="psel">$COM_PAGE_SELECTOR$</span></div><br>$COM_BODY$  
<style>  
.swchItem{background:#f7f7f7;border:1px solid #e4e3e3;padding:7px;}  
.swchItem:hover{background:#FFF;border:1px solid #e4e3e3;padding:7px;}  
a.swchItem{font-size:12px;color:#333;text-decoration:underline;}  
</style>  
<div style="display:none;">$COM_ADD_FORM$</div></div>  
$POWERED_BY$

И в этом же модуле, вид материалов заменяем на:

Code
<div class="owall"><a href="$ENTRY_URL$">$ENTRY_URL$</a> <span id="numberwall">$ID$</span></div>

Далее в дизайне персональной страницы перед </body> ставим код:

Code
<script type="text/javascript">  
  function pageget() {  
  $('.pagesBlock1').find('b').remove().end().find('a').each(function () {if ($(this).text() === '«') {$(this).text('« Назад');}else if($(this).text() === '»') {$(this).text('Вперёд »');} else {$(this).remove();}});  
  }  
  setTimeout('pageget()',500);  
  function spages (page) {  
  setTimeout('pageget()',500);  
  idms = $('.wall').find('#numberwall').text();  
  $('#wallru').load('/board/1-'+page+'-0-'+idms+' .owallru');  
  };  
  idm = $('.wall').find('#numberwall').text();  
  function activate_wall() {  
  $('#an5as').html(' - <u>loading...</u>')  
  $.get('/board/0-0-0-0-1', function(data){   
  var ssid = $('input[name="ssid"]', data).val();   
  $.post('/board/', {a: '12',ocat: '1',jkd428: '1',jkd498: '1',ajax: '1',title: '$USERNAME$_wall',coms_allowed: '1',ssid: ssid}, function(stractive){  
  ssssstr = $(stractive).text();  
  if(ssssstr.indexOf('успешно')!=-1){$('#an5as').html(' - <font color="blue">Стена активирована. Изменения вступят в силу через 1 минуту.</font>')}  
  });   
  });   

  }  
  $('#awall').click(function() {  
  idm = $('.wall').find('#numberwall').text();  
  new _uWnd('adwall','Оставить запись',500,100,{align:0,shadow:0,close:1,autosize:1,maxh:400,minh:100,oncontent:function() {  
  $.get('/board/1-1-0-'+idm, function(data){  
  cseckey = $('input[name="seckey"]',data).val();  
  wcph = $('#secuImgC',data).attr('src');  
  wcphr = $('#secuImgC',data).attr('onclick');  
  if(wcph == undefined){$('#mbcap').hide();$('#otdop').html('<fieldset><legend>Group</legend>Вы избавлены от ввода кода безопасности.</fieldset>')}  
  $('#tcph').html("<img id='caphawallreload' align='absmiddle' src='"+wcph+"'>");  
  $('#caphawallreload').click(wcphr);});  
  }  
  }, '<fieldset><legend>Сообщение <span id="werror"></span></legend><textarea id="twall"></textarea></fieldset><span id="otdop"></span><fieldset id="mbcap"><span id="tcph"></span> <input size="5" type="text" id="polechp"></fieldset><fieldset><table border="0" cellpadding="0" cellspacing="0" onmousedown="this.className=\'downBtn\'" onmouseover="this.className=\'overBtn\'" onmouseout="this.className=\'outBtn\'"><tr><td class="myBtnLeft"><img alt="" border="0" src="http://s1.ucoz.net/img/1px.gif"/></td><td class="myBtnCenter"><div class="myBtnCont x-unselectable" unselectable="on"><a href="javascript://" onclick="addwall()">Готово</a> </div> </td><td class="myBtnRight"><img alt="" border="0" src="http://s1.ucoz.net/img/1px.gif"/></td></tr></table></fieldset>' )  
  });  
  $('.wall').load('$_BOARD_ACTIVITY_URL$ .owall',function(data){  

  wallres = $('.owall').find('a').attr('href');  
  $('#wallru').load(wallres+' .owallru');});  
  ertype = ["Заполните поле комментарий","Запись добавлена","Неверно введён код безопасности"];  

  function addwall() {   
  $('#werror').html(' - <font color="black"><u>Пожалуйста, подождите...</u></font>')  
  $.get('/board/1-1-0-'+idm, function(data){  
  var ssid = $('input[name="ssid"]', data).val();   
  $.post('/index/', {a: '36',id: idm,m: '7',message: $('#twall').val(),code: $('#polechp').val(),seckey: cseckey,sos: ssid},   
  function(wertext){  
  mwer = $(wertext).text();  
  if(mwer.indexOf('заполнено')!=-1){$('#werror').html(' - <font color="red">'+ertype[0]+'</font>')}  
  else if(mwer.indexOf('успешно')!=-1){$('#werror').html(' - <font color="blue">'+ertype[1]+'</font>')}  
  else if(mwer.indexOf('безопасности')!=-1){$('#werror').html(' - <font color="red">'+ertype[2]+'</font>');$('#caphawallreload').click()}  
  });   
  });   

  }  
  function delcom(id){_uPostForm('',{url:'/index/38-'+id})}  
  </script>

и тут же находим:

Code
  
<div id="block21" class="udtb"><div class="udtlb">Подпись:</div> $_SIGNATURE$</div>  

и сразу после, ставим:

Code
<div style="padding:10px;0px;">  
  <div style="display:none;"><div class="wall"></div></div>  
  <center><div id="awall">Оставить запись на стене</div></center><br><div id="block21" class="udtb"><div class="udtlb">Персональная стена:</div> <b>Не активирована</b>  [ <small><a href="javascript://" onclick="activate_wall()">Активировать</a></small><span id="an5as"></span> ]</div>  
  <div id="wallru"></div>  
  <style>  
  #twall{width:100%;height:50px;}  
  #polechp{width:90px;height:35px;font-size:14px;font-weight:bold;}  
  #awall{background:#f8f8f8;border:1px solid #dedede;padding:5px;display:inline-block;color:#454444;text-shadow: 0 1px 0 #fff;font-size:12px;cursor:pointer;}  
  #awall:hover{background:#fbfafa;border:1px solid #dedede;padding:5px;display:inline-block;color:#454444;text-shadow: 0 1px 0 #fff;font-size:12px;cursor:pointer;}  
  #polechp{width:90px;height:35px;font-size:13px;font-weight:bold;padding:4px;margin:4px;text-align: center;}  
  </style>  

  </div>

Обратите внимание, что может быть включена "Премодерация комментариев" для пользователей. В таком случаее её необходимо отключить.
Для того, чтобы пользователи могли удалять свои записи на своих стенах, необходимо зайди на страницу "Установка прав для всех групп" (http://ваш сайт/panel/?a=users;l=groups;t=8) и настроить по скрину:

Протестировать можно на странице: http://ucodes.ru/index/8-0-ModaL

Автор:uCodes.Ru

Категория: Скрипты для uCoz | Просмотров: 809 | Добавил: Пидок | Теги: Скрипт, стена как вконтакте, стена, для ucoz, все как вконтакте, пользователя | Рейтинг: 5.0/1
Всего комментариев: 4
Dj_DimaMC
Dj_DimaMC пишет:
Он вобще не должен был косячить и тормозить xD

Dj_DimaMC
Dj_DimaMC пишет:
гумно полное! Если только кто-то хочет социальную сеть замутить xD dry

Le_hime
Le_hime пишет:
Спасибо огромно!! Очень классно получилось.. правда вначале косячил и тормозил..

Dydka
Dydka пишет:
Скрипт очень хорош для больших порталов happy

Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]