Разместить объявление
хостинг
VIPAdmin / CMS / Datalife Engine / Хаки DLE / Уровень доверия к пользователю

Уровень доверия к пользователю

Уровень доверия к пользователю

Уровень доверия к пользователю
+15
victor20024-07-2010, 06:23Хаки DLE1 комментарий


Описание:
Хак добавляет каждому пользователю уровень доверия со стороны сайта. Этот уровень доверия влияет на возможность добавления новостей пользователем. Зависит же уровень доверия от нескольких факторов, таких как: время пребывания пользователя на сайте в качестве зарегистрированного пользователя, количество личных данных введенных в профиле, количество комментариев, количество опубликованных ранее новостей.

Совместимость: теоретически, все версии (тестировалось на 8.3 и 8.5)

Возможности:

* Вычисление уровня доверия к пользователю на основе имеющихся о нем данных в БД.
* Блокировка добавления новостей если уровень доверия пользователя ниже 1 (в коде всё прокомментировано - можно настроить под свое число).
* Вывод уровня доверия в профиле, только пользователю или всем пользователям.
* Вывод уровня доверия в профиле, только пользователю в логин-блоке.

Особенности:

* Никакой дополнительной нагрузки
* Быстрая установка


Установка


1. Открыть файл engine/modules/addnews.php

Перед:

if( ! $allow_addnews ) {



Добавить:

//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// Уровень доверия
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~$conf_points = array();
$conf_points['regtime'] = round( ( ( $_TIME-$member_id['reg_date'])/864000 ), 2 ); // 0.1 за день с момента регистрации
$conf_points['info'] = strlen($member_id['info']) < 10 ? 0 : 0.1; // 0.1 за зполнение информации о себе
$conf_points['foto'] = ($member_id['foto'] and (file_exists( ROOT_DIR . "/uploads/fotos/" . $member_id['foto'] ))) ? 0.5 : 0; // 0.5 за загрузку авы
$conf_points['land'] = $member_id['land'] == '' ? 0 : 0.2; // 0.2 за зполнение места жительства
$conf_points['name'] = $member_id['fullname'] == '' ? 0 : 0.2; // 0.2 за зполнение имени
$conf_points['icq'] = strlen($member_id['icq']) < 5 ? 0 : 0.1; // 0.1 за зполнение информации об icq
$conf_points['news'] = ( $member_id['news_num']/10 ); // 0.1 за каждую новость
$conf_points['comments'] = ( $member_id['comm_num']/100 ); // 0.01 за каждый комментарий

$confidence_level = array_sum($conf_points);

if( ($confidence_level < 1) && $allow_addnews ) {
$allow_addnews = false;
$lang['add_err_9'] = $lang['add_err_conf'].$confidence_level;
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// Уровень доверия
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


2. Открыть файл languages/Russian/website.lng
После:
'
wysiwyg_language' => "ru",





Добавить (тут, то что между "..." можно заменить на свое - в конце этой фразы выводится текущий уровень доверия юзеру) :

// Уровень доверия
'add_err_conf' => 

"Ваш уровень доверия еще очень низкий, Вы должны заполнить о себе больше информации чтобы мы знали, что Вы не спамер. Чтобы добавить новость Ваш уровень доверия должен достичь 1. сейчас Ваш уровень доверия составляет: ",



Если нужен вывод уровня в профиле:

3. Открыть файл engine/modules/profile.php
После:
$tpl->set( '{lastdate}', langdate( "j F Y H:i", $row['lastdate'] ) );





Добавить:

//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// Уровень доверия
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
if( $member_id['user_id'] == $row['user_id'] ) {
$conf_points = array();
$conf_points['regtime'] = round( ( ( $_TIME-$member_id['reg_date'])/864000 ), 2 ); // 0.1 за день с момента регистрации
$conf_points['info'] = strlen($member_id['info']) < 10 ? 0 : 0.1; // 0.1 за зполнение информации о себе
$conf_points['foto'] = ($member_id['foto'] and (file_exists( ROOT_DIR . "/uploads/fotos/" . $member_id['foto'] ))) ? 0.5 : 0; // 0.5 за загрузку авы
$conf_points['land'] = $member_id['land'] == '' ? 0 : 0.2; // 0.2 за зполнение места жительства
$conf_points['name'] = $member_id['fullname'] == '' ? 0 : 0.2; // 0.2 за зполнение имени
$conf_points['icq'] = strlen($member_id['icq']) set_block( "'\\[show_confidence\\](.*?)\\[/show_confidence\\]'si", "" );
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// Уровень доверия
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~



4. Открыть файл templates/{THEME}/userinfo.tpl

Чтобы выводить уровень только хозяину уровня - В любом месте добавить:

[show_confidence]
Ваш уровень доверия на сайте:
{confidence_level}[/show_confidence]



Чтобы выводить уровень всем, кто смотрит профиль юзера - В любом месте добавить:

Уровень доверия к
{usertitle} : {confidence_level}


Если нужен вывод уровня в логин-панели:

5. Открыть файлtemplates/{THEME}/login.tpl

Перед:
if ($user_group[$member_id['user_group']]['allow_admin']) {





Добавить:

//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// Уровень доверия
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
$conf_points = array();
$conf_points['regtime'] = round( ( ( $_TIME-$member_id['reg_date'])/864000 ), 2 ); // 0.1 за день с момента регистрации
$conf_points['info'] = strlen($member_id['info']) < 10 ? 0 : 0.1; // 0.1 за зполнение информации о себе
$conf_points['foto'] = ($member_id['foto'] and (file_exists( ROOT_DIR . "/uploads/fotos/" . $member_id['foto'] ))) ? 0.5 : 0; // 0.5 за загрузку авы
$conf_points['land'] = $member_id['land'] == '' ? 0 : 0.2; // 0.2 за зполнение места жительства
$conf_points['name'] = $member_id['fullname'] == '' ? 0 : 0.2; // 0.2 за зполнение имени
$conf_points['icq'] = strlen($member_id['icq']) < 5 ? 0 : 0.1; // 0.1 за зполнение информации об icq
$conf_points['news'] = ( $member_id['news_num']/10 ); // 0.1 за каждую новость
$conf_points['comments'] = ( $member_id['comm_num']/100 ); // 0.01 за каждый комментарий

$confidence_level = array_sum($conf_points);

//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// Уровень доверия
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


В любом месте добавить вывод:

Ваш уровень доверия:
{$confidence_level}


Готово.

Автор: truapps

Дата: 08.03.2020 23:39

Просмотров: 715

Оцените статью:

0 0

Еще немного интересного

Способы заработка / Статьи Сайты с бесплатной накруткой TikTok | YouTube
Криптовалюта / Статьи Второй username в тг | Работа с fragment
Способы заработка / Статьи ЗАРАБОТОК НА YouTube
Криптовалюта / Статьи Как избежать бана на Binance
Раскрутка соц. сетей / Статьи Обучение по трафику с ТикТок. Июль 2021
Статьи / Другое Почему важен дизайн?
Статьи / Другое Запускаем AI стрим на Twitch
Статьи / Другое БЕСПЛАТНАЯ КАРТА «Zelf»
Статьи / Другое Поисковик файлов by DeCoded
Статьи / Безопасность [SIM]Спамблок без заморочек.
Способы заработка / Статьи / Арбитраж трафика Заработок на арбитраже трафика 💎💸
Сервисы / Парсинг A-PARSER - парсер сайтов № 1
Сервисы / Сервера и хостинги Хостинг PrivateAlps (Игнорирует DMCA)
Сервисы / Платёжные системы Merchant001- надежный эквайринг для сайта
Статьи Дорвеи 2023-2024
Арбитраж трафика / Статьи Арбитраж трафика на пуш уведомлениях
Статьи / Софт / Антидетект Браузеры ТОП ЛУЧШИХ АНТИДЕТЕКТ БРАУЗЕРОВ 2023
Сервисы / Трекеры / Клоака Keitaro PRO - трекер для арбитража трафика
Хостинг / Скрипты сайтов / Статьи Как настроить работу почты
Хостинг / Скрипты сайтов / Статьи Урок доступ mysql с любого ip
Хостинг / Скрипты сайтов / Статьи Как сделать моментальную установку сервера? HOSTINPL
Хостинг / Статьи Exim (Восстановление по e-mail)
Скрипты сайтов / Статьи JavaScript - Меняем CSS

Отзывы (0)