Seditio Source
Root |
./othercms/dle15_0/upload/engine/inc/iptools.php
<?php
/*
=====================================================
 DataLife Engine - by SoftNews Media Group
-----------------------------------------------------
 http://dle-news.ru/
-----------------------------------------------------
 Copyright (c) 2004-2021 SoftNews Media Group
=====================================================
 This code is protected by copyright
=====================================================
 File: iptools.php
-----------------------------------------------------
 Use: Search by IP
=====================================================
*/
if( !defined( 'DATALIFEENGINE' ) OR !defined( 'LOGGED_IN' ) ) {
   
header( "HTTP/1.1 403 Forbidden" );
   
header ( 'Location: ../../' );
    die(
"Hacking attempt!" );
}

if( !
$user_group[$member_id['user_group']]['admin_iptools'] ) {
   
msg( "error", $lang['index_denied'], $lang['index_denied'] );
}

if( isset(
$_REQUEST['ip'] ) ) $ip = $db->safesql( htmlspecialchars( strip_tags( trim( $_REQUEST['ip'] ) ) ) ); else $ip = "";
if( isset(
$_REQUEST['name'] ) ) $name = $db->safesql( htmlspecialchars( strip_tags( trim( $_REQUEST['name'] ) ), ENT_QUOTES, $config['charset'] ) ); else $name = "";

if( !
$langformatdatefull ) $langformatdatefull = "d.m.Y H:i";

if(
$_REQUEST['doaction'] == "dodelcomments" AND $_REQUEST['id']) {
   
    if(
$_REQUEST['user_hash'] == "" or $_REQUEST['user_hash'] != $dle_login_hash ) {
       
        die(
"Hacking attempt! User not found" );
   
    }
   
   
$id = intval( $_REQUEST['id'] );
   
   
$db->query( "UPDATE " . USERPREFIX . "_users set comm_num='0' WHERE user_id ='{$id}'" );
   
deletecommentsbyuserid($id);
}
   
echoheader( "<i class=\"fa fa-search position-left\"></i><span class=\"text-semibold\">{$lang['opt_iptools']}</span>", $lang['header_ip_1'] );

echo <<<HTML
<form action="?mod=iptools" method="post" class="form-horizontal">
<input type="hidden" name="action" value="find">
<input type="hidden" name="mod" value="iptools">
<div class="panel panel-default">
  <div class="panel-heading">
   
{$lang['opt_iptoolsc']}
  </div>
  <div class="panel-body">
   
{$lang['opt_iptoolsc']}<br /><input class="form-control width-350 position-left" type="text" name="ip" value="{$ip}"><input type="submit" value="{$lang['b_find']}" class="btn bg-primary-600 btn-sm btn-raised">
     <div class="text-muted text-size-small mb-20"><i class="fa fa-exclamation-circle"></i>
{$lang['opt_ipfe']}</div>
     
{$lang['opt_iptoolsname']}<br /><input class="form-control width-350 position-left" type="text" name="name" value="{$name}"><input type="submit" value="{$lang['b_find']}" class="btn bg-primary-600 btn-sm btn-raised">
  </div>
</div>

</form>
HTML;

if(
$_REQUEST['action'] == "find" and $ip != "" ) {
   
    echo <<<HTML
<script>
<!--
function cdelete(id){
        DLEconfirm( '
{$lang['comm_alldelconfirm']}', '{$lang['p_confirm']}', function () {
            document.location='?mod=iptools&action=find&ip=
{$ip}&doaction=dodelcomments&user_hash={$dle_login_hash}&id=' + id + '';
        } );
}
//-->
</script>
<div class="panel panel-default">
  <div class="panel-heading">
   
{$lang['ip_found_users']}
  </div>
  <div class="table-responsive">
    <table class="table table-xs table-hover">
      <thead>
      <tr>
        <th>
{$lang['user_name']}</th>
        <th class="text-center">IP</td>
        <th class="text-center">
{$lang['user_reg']}</th>
        <th class="text-center">
{$lang['user_last']}</th>
        <th class="text-center">
{$lang['user_news']}</th>
        <th class="text-center">
{$lang['user_coms']}</th>
        <th class="text-center">
{$lang['user_acc']}</th>
      </tr>
      </thead>
      <tbody>
HTML;
   
   
$db->query( "SELECT * FROM " . USERPREFIX . "_users WHERE logged_ip LIKE '{$ip}%'" );
   
   
$i = 0;
    while (
$row = $db->get_array() ) {
       
$i ++;
       
        if(
$row['news_num'] == 0 ) {
           
$news_link = $row['news_num'];
        } else {
           
$news_link = "[<a href=\"{$config['http_home_url']}index.php?subaction=allnews&user=" . urlencode( $row['name'] ) . "\" target=\"_blank\">" . $row['news_num'] . "</a>]";
        }
        if(
$row['comm_num'] == 0 ) {
           
           
$comms_link = $row['comm_num'];
           
        } else {
           
           
$comms_link = <<<HTML
               <div class="btn-group">
                <a href="#" target="_blank" data-toggle="dropdown" data-original-title="
{$lang['edit_com']}" class="status-info tip"><b>{$row['comm_num']}</b></a>
                  <ul class="dropdown-menu text-left">
                   <li><a href="
{$config['http_home_url']}index.php?do=lastcomments&userid={$row['user_id']}" target="_blank"><i class="fa fa-eye position-left"></i>{$lang['comm_view']}</a></li>
                   <li class="divider"></li>
                   <li><a onclick="javascript:cdelete('
{$row['user_id']}'); return(false)" href=""?mod=iptools&action=find&ip={$ip}&doaction=dodelcomments&user_hash={$dle_login_hash}&id={$row['user_id']}"><i class="fa fa-trash-o position-left text-danger"></i>{$lang['comm_del']}</a></li>
                  </ul>
                </div>
HTML;
        }
       
        if(
$row['banned'] == 'yes' ) $group = "<span class=\"text-danger\">" . $lang['user_ban'] . "</span>";
        else
$group = $user_group[$row['user_group']]['group_name'];
       
        echo
"
        <tr>
        <td><a href=\"?mod=editusers&action=edituser&id=
{$row['user_id']}\" target=\"_blank\">{$row['name']}</a></td>
        <td class=\"text-center\">"
. $row['logged_ip'] . "</td>
        <td class=\"text-center\"> "
. langdate( $langformatdatefull, $row['reg_date'] ) . "</td>
        <td class=\"text-center\">"
. langdate( $langformatdatefull, $row['lastdate'] ) . "</td>
        <td class=\"text-center\">"
. $news_link . "</td>
        <td class=\"text-center\">"
. $comms_link . "</td>
        <td class=\"text-center\">"
. $group . "</td>
        </tr>"
;
    }
   
    if(
$i == 0 ) {
        echo
"<tr><td height=18 colspan=7><p align=center>{$lang['ip_empty']}</p></td></tr>";
    }
   
    echo <<<HTML
     </tbody>
    </table>
  </div>
</div>


<div class="panel panel-default">
  <div class="panel-heading">
   
{$lang['ip_found_comments']}
  </div>
  <div class="table-responsive">

    <table class="table table-xs table-hover">
      <thead>
      <tr>
        <th>
{$lang['user_name']}</th>
        <th class="text-center">IP</td>
        <th class="text-center">
{$lang['user_reg']}</th>
        <th class="text-center">
{$lang['user_last']}</th>
        <th class="text-center">
{$lang['user_news']}</th>
        <th class="text-center">
{$lang['user_coms']}</th>
        <th class="text-center">
{$lang['user_acc']}</th>
      </tr>
      </thead>
      <tbody>
HTML;
   
   
$db->query( "SELECT " . PREFIX . "_comments.user_id, " . PREFIX . "_comments.ip, " . USERPREFIX . "_users.comm_num, banned, user_group, reg_date, lastdate, " . USERPREFIX . "_users.name, " . USERPREFIX . "_users.news_num FROM " . PREFIX . "_comments LEFT JOIN " . USERPREFIX . "_users ON " . PREFIX . "_comments.user_id=" . USERPREFIX . "_users.user_id WHERE " . PREFIX . "_comments.ip LIKE '{$ip}%' AND " . PREFIX . "_comments.is_register = '1' AND " . USERPREFIX . "_users.name != '' GROUP BY " . PREFIX . "_comments.user_id" );
   
   
$i = 0;
    while (
$row = $db->get_array() ) {
       
$i ++;
       
        if(
$row['news_num'] == 0 ) {
           
$news_link = $row['news_num'];
        } else {
           
$news_link = "[<a href=\"{$config['http_home_url']}index.php?subaction=allnews&user=" . urlencode( $row['name'] ) . "\" target=\"_blank\">" . $row['news_num'] . "</a>]";
        }
       
        if(
$row['comm_num'] == 0 ) {
           
$comms_link = $row['comm_num'];
        } else {
           
$comms_link = <<<HTML
               <div class="btn-group">
                <a href="#" target="_blank" data-toggle="dropdown" data-original-title="
{$lang['edit_com']}" class="status-info tip"><b>{$row['comm_num']}</b></a>
                  <ul class="dropdown-menu text-left">
                   <li><a href="
{$config['http_home_url']}index.php?do=lastcomments&userid={$row['user_id']}" target="_blank"><i class="fa fa-eye position-left"></i>{$lang['comm_view']}</a></li>
                   <li class="divider"></li>
                   <li><a onclick="javascript:cdelete('
{$row['user_id']}'); return(false)" href=""?mod=iptools&action=find&ip={$ip}&doaction=dodelcomments&user_hash={$dle_login_hash}&id={$row['user_id']}"><i class="fa fa-trash-o position-left text-danger"></i>{$lang['comm_del']}</a></li>
                  </ul>
                </div>
HTML;
        }
       
        if(
$row['banned'] == 'yes' ) $group = "<span class=\"text-danger\">" . $lang['user_ban'] . "</span>";
        else
$group = $user_group[$row['user_group']]['group_name'];
       
        echo
"
        <tr>
        <td><a href=\"?mod=editusers&action=edituser&id=
{$row['user_id']}\" target=\"_blank\">{$row['name']}</a></td>
        <td class=\"text-center\">"
. $row['ip'] . "</td>
        <td class=\"text-center\">"
. langdate( $langformatdatefull, $row['reg_date'] ) . "</td>
        <td class=\"text-center\">"
. langdate( $langformatdatefull, $row['lastdate'] ) . "</td>
        <td class=\"text-center\">"
. $news_link . "</td>
        <td class=\"text-center\">"
. $comms_link . "</td>
        <td class=\"text-center\">"
. $group . "</td>
        </tr>"
;
    }
   
    if(
$i == 0 ) {
        echo
"<tr><td height=18 colspan=7><p align=center>{$lang['ip_empty']}</p></td></tr>";
    }
   
    echo <<<HTML
     </tbody>
    </table>
  </div>
</div>
HTML;

}

if(
$name != "" ) {
   
    echo <<<HTML
<div class="panel panel-default">
  <div class="panel-heading">
   
{$lang['opt_iptoolsname']}
  </div>
  <div class="panel-body">

HTML;
   
   
$row = $db->super_query( "SELECT user_id, name, logged_ip FROM " . USERPREFIX . "_users WHERE name='" . $name . "'" );
   
    if( !isset(
$row['user_id']) ) {
       
        echo
"<div class=\"text-center\"><b>" . $lang['user_nouser'] . "</b></div>";
   
    } else {
           
$ip_link = <<<HTML
               <div class="btn-group">
                <a href="#" target="_blank" data-toggle="dropdown" class="status-info">
{$row['logged_ip']}</a>
                  <ul class="dropdown-menu text-left">
                   <li><a href="https://www.nic.ru/whois/?searchWord=
{$row['logged_ip']}" target="_blank"><i class="fa fa-eye position-left"></i> {$lang['ip_info']}</a></li>
                   <li class="divider"></li>
                   <li><a href="?mod=blockip&ip=
{$row['logged_ip']}"><i class="fa fa-trash-o position-left text-danger"></i>{$lang['ip_ban']}</a></li>
                  </ul>
                </div>
HTML;
       
        echo
$lang['user_name'] . " <b>" . $row['name'] . "</b><br /><br />" . $lang['opt_iptoollast'] . $ip_link."<br /><br />" . $lang['opt_iptoolcall'];
       
       
$db->query( "SELECT ip FROM " . PREFIX . "_comments WHERE user_id = '{$row['user_id']}' GROUP BY ip" );
       
       
$ip_list = array ();
       
        while (
$row = $db->get_array() ) {
       
           
$ip_list[] = <<<HTML
               <div class="btn-group">
                <a href="#" target="_blank" data-toggle="dropdown" class="status-info">
{$row['ip']}</a>
                  <ul class="dropdown-menu text-left">
                   <li><a href="https://www.nic.ru/whois/?searchWord=
{$row['ip']}" target="_blank"><i class="fa fa-eye position-left"></i> {$lang['ip_info']}</a></li>
                   <li class="divider"></li>
                   <li><a href="?mod=blockip&ip=
{$row['ip']}"><i class="fa fa-trash-o position-left text-danger"></i>{$lang['ip_ban']}</a></li>
                  </ul>
                </div>
HTML;
        }
       
        echo
implode( ", ", $ip_list );
    }
   
    echo <<<HTML
  </div>
</div>
HTML;

}

echofooter();
?>