Статусы пользователей (AJAX)
26.08.2013
Описание:
Представляю вашему вниманию интересные статусы пользователей в профайле, а также комментариях и окне пользователя, всё это чудо находится в одном Ajax окне, что облегчит работу, так же это будет выглядить очень стильно на вашем сайте, Ajax всегда был красив, удобен и функционален. В архиве с самим хаком для DLE лежит так же инструкция по установке и использованию, что будет очень полезно для вас, а также для вашего сайта.
Инструкция по установке:
1. Выполнить запрос в базу данных:
2. Копируем файл status.php в engine/ajax.
3. Открываем файл /engine/modules/profile.php
Находим:
Выше вставить:
4. Открываем файл /engine/ajax/profile.php
Находим:
Выше вставить:
5. Открываем файлы:
engine/ajax/addcomments.php
engine/ajax/comments.php
engine/modules/show.full.php
engine/modules/lastcomments.php
Находим:
Заменяем:
6. Открываем файл engine/classes/comments.class.php
Находим:
После вставляем:
7. В шаблонах userinfo.tpl, profile_popup.tpl, comments.tpl вставить
8. В самый конец вашего css файла вставить:
Установка готова! © Fance.ru
Представляю вашему вниманию интересные статусы пользователей в профайле, а также комментариях и окне пользователя, всё это чудо находится в одном 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);
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;}
#status_form:focus{box-shadow:inset 0 0 6px grey;}
Установка готова! © Fance.ru
- Автор: eFence
- Категория: Хаки для DLE
- Жалоба
Теги: AJAX, DLE, Статусы пользователей, хак
Источник: не указан