Вход Регистрация
Файл: hashtag.io-2629a1a4ea078149b002e45e2e12bb946062c2b8/config/class/settings.class.php
Строк: 178
<?php
  
class settings{

    protected 
$db;
    protected 
$DIR;

    public function 
__construct(){
      
$db N::_DB();
      
$DIR N::$DIR;

      
$this->db $db;
      
$this->DIR $DIR;
    }

    public function 
settingsDefaults($id){
      
$hint "public";

      
$fquery $this->db->prepare("INSERT INTO email_private(user_id, options) VALUES(:id, :options)");
      
$fquery->execute(array(":id" => $id":options" => $hint));

      
$fquery $this->db->prepare("INSERT INTO mobile_private(user_id, options) VALUES(:id, :options)");
      
$fquery->execute(array(":id" => $id":options" => $hint));
    }

    public function 
changePassword($cur__$new__$new_a__){
      
$cur_ trim(preg_replace("#[<>]#i"""$cur__));
      
$new_ trim(preg_replace("#[<>]#i"""$new__));
      
$new_a_ trim(preg_replace("#[<>]#i"""$new_a__));
      
$session $_SESSION['id'];

      
$cur password_hash($cur_PASSWORD_DEFAULT);
      
$new password_hash($new_PASSWORD_DEFAULT);
      
$new_a password_hash($new_a_PASSWORD_DEFAULT);

      
$query $this->db->prepare("SELECT password FROM users WHERE id = :id LIMIT 1");
      
$query->execute(array(":id" => $session));
      
$row $query->fetch(PDO::FETCH_OBJ);
      
$password $row->password;
      
// return $password;

      
if (!password_verify($cur_$password)) {
        return 
"Incorrect password";
      } else if(
$new_ != $new_a_) {
        return 
"New passwords don't match";
      } else {
        
$mquery $this->db->prepare("UPDATE users SET password = :password WHERE id = :id");
        
$mquery->execute(array(":password" => $new_a":id" => $session));
        return 
"Password changed";
      }

    }

    public function 
changeAccountType($value){
      include 
'universal.class.php';
      
$universal = new universal;

      
$session $_SESSION['id'];
      
$query $this->db->prepare("UPDATE users SET type = :type WHERE id = :id");
      
$query->execute(array(":type" => $value":id" => $session));
      return 
$universal->GETsDetails($session"type");
    }

    public function 
block($user){
      
$session $_SESSION['id'];
      if (
self::isBlocked($user) == false) {
        include 
'universal.class.php';
        
$universal = new universal;

        
$query $this->db->prepare("INSERT INTO block(block_by, block_to, time) VALUES (:by, :to, now())");
        
$query->execute(array(":by" => $session":to" => $user));

        
$q $this->db->prepare("DELETE FROM follow_system WHERE follow_by = :user AND follow_to = :me");
        
$q->execute(array(":user" => $user":me" => $session));

        echo 
$universal->GETsDetails($user"username");
      }
    }

    public function 
isBlocked($user){
      if (isset(
$_SESSION['id'])) {
        
$session $_SESSION['id'];
        
$query $this->db->prepare("SELECT block_id FROM block WHERE block_by = :by AND block_to = :to");
        
$query->execute(array(":by" => $session":to" => $user));
        
$count $query->rowCount();
        if (
$count == 0) {
          return 
false;
        } else if(
$count 0) {
          return 
true;
        }
      }
    }

    public function 
AmIBlocked($user){
      
$session $_SESSION['id'];
      
$query $this->db->prepare("SELECT block_id FROM block WHERE block_by = :by AND block_to = :to");
      
$query->execute(array(":by" => $user":to" => $session));
      
$count $query->rowCount();
      if (
$count == 0) {
        return 
false;
      } else if(
$count 0){
        return 
true;
      }
    }

    public function 
unblock($id){
      
$session $_SESSION['id'];

      include 
'universal.class.php';
      
$universal = new universal;

      
$query $this->db->prepare("DELETE FROM block WHERE block_by = :by AND block_to = :to");
      
$query->execute(array(":by" => $session":to" => $id));
      echo 
$universal->GETsDetails($id"username");
    }

    public function 
blockedUsers(){
      
$session $_SESSION['id'];

      
$universal = new universal;
      
$avatar = new Avatar;
      
$mutual = new mutual;

      
$query $this->db->prepare("SELECT * FROM block WHERE block_by = :by");
      
$query->execute(array(":by" => $session));
      if (
$query->rowCount() == 0) {
        echo 
"<div class='home_last_mssg pro_last_mssg'><img src='{$this->DIR}/images/needs/large.jpg'>
        <span>No blocked members</span></div>"
;
      } else if (
$query->rowCount() > 0) {
        while (
$row $query->fetch(PDO::FETCH_OBJ)) {
          
$id $row->block_id;
          
$to $row->block_to;
          
$time $row->time;

          echo 
"<div class='blocked_users' data-blockid='{$to}'><img src='{$this->DIR}/{$avatar->DisplayAvatar($to)}' alt=''>
            <div class='blocked_u_content'><div class='blocked_info'>
                <a href='
{$this->DIR}/profile/{$universal->GETsDetails($to"username")}' class='blocked_username'>{$universal->GETsDetails($to'username')}</a>
                <span class='blocked_mutual'>
{$mutual->eMutual($to)}</span></div>
              <a href='#' class='unblock sec_btn'>Unblock</a></div></div>"
;

        }
      }

    }

    public function 
emailPrivacy($user){
      
$query $this->db->prepare("SELECT options FROM email_private WHERE user_id = :user LIMIT 1");
      
$query->execute(array(":user" => $user));
      if (
$query->rowCount() == 1) {
        
$row $query->fetch(PDO::FETCH_OBJ);
        return 
$row->options;
      }
    }

    public function 
mobilePrivacy($user){
      
$query $this->db->prepare("SELECT options FROM mobile_private WHERE user_id = :user LIMIT 1");
      
$query->execute(array(":user" => $user));
      if (
$query->rowCount() == 1) {
        
$row $query->fetch(PDO::FETCH_OBJ);
        return 
$row->options;
      }
    }

    public function 
changeEmailPrivacy($hint){
      
$session $_SESSION['id'];
      
$query $this->db->prepare("UPDATE email_private SET options = :options WHERE user_id = :user");
      
$query->execute(array(":options" => $hint":user" => $session));
    }

    public function 
changeMobilePrivacy($hint){
      
$session $_SESSION['id'];
      
$query $this->db->prepare("UPDATE mobile_private SET options = :options WHERE user_id = :user");
      
$query->execute(array(":options" => $hint":user" => $session));
    }

    public function 
loginDetails(){
      
$session $_SESSION['id'];

      
$query $this->db->prepare("SELECT * FROM login WHERE user_id = :me ORDER BY login_id DESC");
      
$query->execute(array(":me" => $session));
      if (
$query->rowCount() == 0) {
        echo 
"<div class='home_last_mssg login_det_last_mssg'><img src='{$this->DIR}/images/needs/large.jpg'>
        <span>You got no login details</span></div>"
;
      } else {

        echo 
"<table>

        <tr>
          <td class='td_bold'>Login</td>
          <td class='td_bold'>OS</td>
          <td class='td_bold'>Browser</td>
          <td class='td_bold'>IP</td>
          <td class='td_bold'>Logout</td>
        </tr>"
;

        while (
$row $query->fetch(PDO::FETCH_OBJ)) {
          
$login $row->time;
          
$ip $row->ip;
          
$os $row->os;
          
$browser $row->browser;
          
$logout $row->logout;

          echo 
"<tr>
            <td>
{$login}</td>
            <td>
{$os}</td>
            <td>
{$browser}</td>
            <td>
{$ip}</td>
            <td>"
;
              if(
substr($logout04) == "0000"){ echo 'By the browser'; } else { echo $logout; }
              
"</td>
          </tr>"
;

        }

        echo 
"</table>";

      }

    }

  }
?>
Онлайн: 1
Реклама