Войти на сайт Регистрация
Добавить шаблон В каталоге: 578
Fance.ru
Статусы пользователей (AJAX)
26.08.2013
  • 710 Просмотров:
  • 1 Скачиваний:
  • 0 Комментариев:
  • 3.0 Рейтинг:
  • (Голосов: 3)
Описание:
Представляю вашему вниманию интересные статусы пользователей в профайле, а также комментариях и окне пользователя, всё это чудо находится в одном Ajax окне, что облегчит работу, так же это будет выглядить очень стильно на вашем сайте, Ajax всегда был красив, удобен и функционален. В архиве с самим хаком для DLE лежит так же инструкция по установке и использованию, что будет очень полезно для вас, а также для вашего сайта.

Инструкция по установке:
1. Выполнить запрос в базу данных:

Код
ALTER TABLE `dle_users` ADD `u_status` text not null


2. Копируем файл status.php в engine/ajax.

3. Открываем файл /engine/modules/profile.php
Находим:

Код
$xfieldsaction = "list";


Выше вставить:

Код
$status_text = "$row[u_status]";  
  if($status_text == "") $status_text ="Статус";  
   
  if($member_id['user_id'] == "1" or $member_id['user_id'] == "$row[user_id]"){  
  $user_status .= <<<HTML  
  <script>  
  <!--  
  $.fx.speeds._default = 1000;  
  $(function() {  
  $("#status_edit").dialog({  
  autoOpen: false,  
  show: 'fade',  
  width: '500',  
  buttons: {  
  "Отмена" : function() {  
  $(this).dialog("close");  
  },  
  "Обновить" : function() {  
  var message = $("#status_form").val();  
  var userid = "$row[user_id]";  
  ShowLoading('');  
  $.post(dle_root + "engine/ajax/status.php", { text:message, user:userid }, function(data){  
  $("#place").html(data);  
  $("#status_form").val('');  
  HideLoading('');  
  });  
  $(this).dialog("close");  
  },  
  },  
  });  
  $( "#st_e_b" ).click(function() {  
  $( "#status_edit" ).dialog( "open" );  
  return false;  
  });  
  });  
  -->  
  </script>  
  HTML;  
  }  
  if($member_id['user_id'] == "1" or $member_id['user_id'] == "$row[user_id]" or $row['u_status'] != ""){  
  $user_status .= "<a href=\"#\" id=\"st_e_b\"><span id=\"place\">$status_text</span></a>";  
  }  

  if($member_id['user_id'] == "1" or $member_id['user_id'] == "$row[user_id]"){  
  $user_status .= <<<HTML  
  <div id="status_edit" title="Изменение статуса">О чем ты сейчас думаешь?

<input type="text" name="status_e" id="status_form" /></div>  
  HTML;  
  }  
   
  $tpl->set( '{user_status}', $user_status);


4. Открываем файл /engine/ajax/profile.php
Находим:

Код
$tpl->compile( 'content' );


Выше вставить:

Код
$tpl->set( '{user_status}', $row['u_status'] );


5. Открываем файлы:
engine/ajax/addcomments.php
engine/ajax/comments.php
engine/modules/show.full.php
engine/modules/lastcomments.php
Находим:

Код
foto, fullname,


Заменяем:

Код
foto, fullname, u_status,


6. Открываем файл engine/classes/comments.class.php
Находим:

Код
$tpl->set( '{group-name}', $user_group[$row['user_group']]['group_prefix'].$user_group[$row['user_group']]['group_name'].$user_group[$row['user_group']]['group_suffix'] );


После вставляем:

Код
$tpl->set( '{user_status}', $row['u_status'] );


7. В шаблонах userinfo.tpl, profile_popup.tpl, comments.tpl вставить

Код
{user_status}


8. В самый конец вашего css файла вставить:

Код
#status_form{border:solid 1px #2c76ad;height:23px;width:365px;padding:0 5px;border-radius:3px;box-shadow:inset 0 0 3px grey;-webkit-transition: all 0.5s;-moz-transition: all 0.5s;-ms-transition: all 0.5s;-o-transition: all 0.5s;transition: all 0.5s;}  
  #status_form:focus{box-shadow:inset 0 0 6px grey;}


Установка готова! © Fance.ru
Источник: не указан
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]