Mysidia Adoptables Support Forum  

Home Community Mys-Script Creative Off-Topic
Go Back   Mysidia Adoptables Support Forum > Mysidia Adoptables > Questions and Supports

Notices

Reply
 
Thread Tools Display Modes
  #1  
Old 08-28-2016, 03:38 PM
NobodysHero's Avatar
NobodysHero NobodysHero is offline
Co-Owner of MystFell
 
Join Date: Nov 2013
Posts: 144
Gender: Female
Credits: 18,423
NobodysHero is on a distinguished road
Default Another Puzzle to Solve: User Profiles Display As Blank

Hey there!

Okay, so some of the profiles display fine, while others display blank. To help us solve this riddle, I've cleared my error log and refreshed over one of those profiles that displays as blank and these are the errors it displays.

You may not need any of this extra information, as I think I /might/ have already figured it out. I believe the code was just angry I deleted user 19? >.> If that's the case, what am I suppose to do if a user no longer wishes to remain on the site and requests their account deleted? The delete feature in the ACP for users still doesn't work for MystFell.

  Spoiler: Error Log 
[28-Aug-2016 15:25:05 America/Chicago]
PHP Code:
PHP Notice:  Undefined variablecontroller in /home/mystfell/public_html/classes/class_language.php on line 111
[28-Aug-2016 15:25:05 America/ChicagoPHP Notice:  Undefined propertyUserProfile::$usergroup in /home/mystfell/public_html/classes/class_userprofile.php on line 30
[28-Aug-2016 15:25:05 America/ChicagoPHP Notice:  Undefined variableccstat in /home/mystfell/public_html/classes/class_userprofile.php on line 31
[28-Aug-2016 15:25:05 America/ChicagoPHP Fatal error:  Uncaught exception 'MemberNotfoundException' with message 'The specified user 19 does not exist...' in /home/mystfell/public_html/classes/class_member.php:30
Stack trace
:
#0 /home/mystfell/public_html/classes/class_friendlist.php(51): Member->__construct('19')
#1 /home/mystfell/public_html/classes/class_userprofile.php(162): Friendlist->display()
#2 /home/mystfell/public_html/classes/class_userprofile.php(82): UserProfile->getfriends(Object(Member))
#3 /home/mystfell/public_html/view/profileview.php(83): UserProfile->display('friends', Object(Member))
#4 /home/mystfell/public_html/classes/class_frontcontroller.php(100): ProfileView->view()
#5 /home/mystfell/public_html/index.php(74): FrontController->render()
#6 /home/mystfell/public_html/index.php(78): IndexController::main()
#7 {main}
  
thrown in /home/mystfell/public_html/classes/class_member.php on line 30
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined variablecontroller in /home/mystfell/public_html/classes/class_language.php on line 111
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyDocumentRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyDocumentRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyDocumentRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyDocumentRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyDocumentRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyDocumentRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyDocumentRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyDocumentRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyDocumentRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyDocumentRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyDocumentRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyDocumentRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyDocumentRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyDocumentRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyDocumentRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyDocumentRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyDocumentRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyDocumentRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyDocumentRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyDocumentRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyListRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyDocumentRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyDocumentRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyDocumentRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyDocumentRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyDocumentRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyDocumentRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyDocumentRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyDocumentRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyDocumentRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184
[28-Aug-2016 15:25:17 America/ChicagoPHP Notice:  Undefined propertyDocumentRenderer::$thematicBreak in /home/mystfell/public_html/classes/class_guirenderer.php on line 184 


I did notice it mentioned a few files, so here's the ones I think we'll need to hunt for additional clues.

class_userprofile.php
  Spoiler: User Profile Class 
PHP Code:
<?php

use Resource\Collection\LinkedList;

class 
UserProfile extends Model{
  
// The user profile class, it has dependency over class Member and cannot exist on its own
  
public $uid;
  public 
$username;
  protected 
$avatar;
  protected 
$bio;
  protected 
$color;
  protected 
$about;
  protected 
$favpet;
  protected 
$gender;
  protected 
$nickname;
  
  public function 
__construct($uid){
      
// Fetch the basic profile params for users
      
      
$mysidia Registry::get("mysidia");    
      
$row $mysidia->db->select("users_profile", array(), "uid ='{$uid}'")->fetchObject();
      
// loop through the anonymous object created to assign properties
      
foreach($row as $key => $val){
         
$this->$key $val;         
      }
      
// Successfully instantiate user profile object      
  
}  
  
  public function 
formatusername(){
      
$ccstats cancp($this->usergroup);
      
$this->username = ($ccstat == "yes")?"<img src='templates/icons/star.gif' /> {$this->username}":$this->username
      return 
$this;
  }
  
  public function 
getAvatar(){
      return 
$this->avatar;
  }
  
  public function 
getBio(){
      return 
$this->bio;
  }
  
  public function 
getColor(){
      return 
$this->color;
  }
  
  public function 
getFavpetID(){
      return 
$this->favpet;
  }
  
  public function 
getFavpetInfo(){
      return 
$this->about;
  }
     
  public function 
getFavpet(){
      if(
is_numeric($this->favpet)){
          
$this->favpet = ($this->favpet == 0)?new Comment("None Selected"):new Link("levelup/click/{$this->favpet}", new Image("levelup/siggy/{$this->favpet}"), TRUE); 
      } 
      return 
$this->favpet;      
  }
  
  public function 
getGender(){
      return 
$this->gender;
  }
  
  public function 
getNickname(){
      return 
$this->nickname;
  }
  
  public function 
display($action ""$data ""){
      switch(
$action){
         case 
"vmessages":
            
$this->vmessages();
            break;
         case 
"aboutme":
            
$this->aboutme();
            break;
         case 
"adopts":
            
$this->showalladopts();
            break;
         case 
"friends":
            
$this->getfriends($data);
            break;
         case 
"contactinfo":
            
$this->contactinfo($data);
            break;
         default:
            throw new 
Exception("Invalid profile tab...");         
      }
  }
  
  private function 
vmessages(){
      
$mysidia Registry::get("mysidia");    
      
$document $mysidia->frame->getDocument();
      
$stmt $mysidia->db->select("visitor_messages", array(), "touser = '{$mysidia->input->get("user")}' ORDER BY vid DESC LIMIT 0, 15");
      if(
$stmt->rowCount() == 0){          
          return;
      }
      
$vmList = new TableBuilder("vmessages"800FALSE);
      
$vmList->setHelper(new MessageTableHelper);
      while(
$vmessage $stmt->fetchObject()){
         
$sender $mysidia->db->join("users_profile""users_profile.uid = users.uid")
                               ->
select("users", array(), constant("PREFIX")."users.username = '{$vmessage->fromuser}'")
                               ->
fetchObject(); 
         
$cells = new LinkedList;
         
$cells->add(new TCell($vmList->getHelper()->getAvatarImage($sender->avatar)));
         
$cells->add(new TCell($vmList->getHelper()->getVisitorMessage($vmessage)));
         if((
$mysidia->user instanceof Admin) or ($mysidia->user->username == $vmessage->fromuser)){
             
$cells->add(new TCell($vmList->getHelper()->getManageActions($vmessage->vid)));
         }
         
$vmList->buildRow($cells);                            
      }
      
$document->add($vmList);
  }
  
  private function 
aboutme(){
      
$mysidia Registry::get("mysidia");    
      
$document $mysidia->frame->getDocument();
      
$title = new Comment($mysidia->lang->basic.$mysidia->input->get("user"));
      
$title->setBold(TRUE);
      
$title->setUnderlined(TRUE);
      
$membersince $mysidia->db->select("users", array("membersince"), "username = '{$mysidia->input->get("user")}'")->fetchColumn();      
      
$basicinfo "<br><strong>Member Since:</strong> {$membersince}<br>
                    Gender: 
{$this->gender}<br>
                    Favorite Color: 
{$this->color}<br>
                    Nickname: 
{$this->nickname}<br>
                    Bio: 
{$this->bio}";
      
      
$document->add($title);
      
$document->add(new Image($this->avatar"avatar"100));
      
$document->add(new Comment($basicinfo));                    
  }
  
  private function 
showalladopts(){
      
$mysidia Registry::get("mysidia");    
      
$document $mysidia->frame->getDocument();
      
$spotlight = new Comment(".:AdoptSpotlight:.");
      
$spotlight->setHeading(2);       

      
$document->add($spotlight);
      
$document->add($this->favpet);
      
$document->add(new Comment($this->about));

      
$title = new Comment("{$mysidia->input->get("user")}'s Pets:");
      
$title->setBold(TRUE);
      
$title->setUnderlined(TRUE);
      
$document->add($title);

      
$stmt $mysidia->db->select("owned_adoptables", array("aid"), "owner = '{$mysidia->input->get("user")}'");
      while(
$id $stmt->fetchColumn()){
          
$adopt = new OwnedAdoptable($id);
          
$document->add(new Comment('<p style="float:left; text-align:center;"><a href="/myadopts/manage/' $id '"><img src="' $adopt->getImage() . '" width="100px" height="100px" /><br /><b>' $adopt->getName() . '</b><br /><em>' $adopt->getType() . '</em><br />Level: ' $adopt->getCurrentLevel() . '<br />Clicks: ' $adopt->getTotalClicks() . '</a></p>'FALSE)); 
      }
      
$document->add(new Comment('<div style="clear:left;"> </div>'));
  }
  
  private function 
getfriends($user){
      
$mysidia Registry::get("mysidia");    
      
$document $mysidia->frame->getDocument();
      
$friendlist = new Friendlist($user);
      
$document->add(new Comment("{$user->username} currently have {$friendlist->gettotal()} friends."));
      
$friendlist->display();  
  }
  
  private function 
contactinfo($contacts){
      
$mysidia Registry::get("mysidia");    
      
$document $mysidia->frame->getDocument();    
      
$member = new Member($mysidia->input->get("user"));
      
$document->add(new Image("templates/icons/web.gif""web"));
      
$document->add(new Comment($contacts->website));
      
$document->add(new Image("templates/icons/facebook.gif""facebook"));
      
$document->add(new Comment($contacts->facebook));
      
$document->add(new Image("templates/icons/twitter.gif""twitter"));
      
$document->add(new Comment($contacts->twitter));
      
$document->add(new Image("templates/icons/aim.gif""aim"));
      
$document->add(new Comment($contacts->aim));
      
$document->add(new Image("templates/icons/msn.gif""msn"));
      
$document->add(new Comment($contacts->msn));
      
$document->add(new Image("templates/icons/yahoo.gif""yahoo"));
      
$document->add(new Comment($contacts->yim));
      
$document->add(new Image("templates/icons/skype.gif""skype"));
      
$document->add(new Comment($contacts->skype));
      
$document->add(new Image("templates/icons/title.gif""Write a PM"));
      
$document->add(new Link("messages/newpm/{$mysidia->input->get("user")}""Send {$mysidia->input->get("user")} a Private Message"TRUE));
      
$document->add(new Image("templates/icons/fr.gif""Send a Friend Request"));
      
$document->add(new Link("friends/request/{$member->uid}""Send {$mysidia->input->get("user")} a Friend Request"TRUE));
      
$document->add(new Image("templates/icons/trade.gif""Make a Trade Offer"));
      
$document->add(new Link("trade/offer/user/{$member->uid}""Make {$mysidia->input->get("user")} a Trade Offer"));  
  }

  protected function 
save($field$value){

  }   
}
?>


class_friendlist.php
  Spoiler: class_friendlist.php 
PHP Code:
<?php

use Resource\Collection\LinkedList as LinkedList;

class 
Friendlist extends UserContainer{
  
// The Friendlist class, which is a container
  
  
public $user;  
  protected 
$fids;  
  protected 
$fnum;
  protected 
$privacy "public";
  
  public function 
__construct(User $user){
     
// Fetch the basic properties of friendlist
     
     
$this->user $user->username;    
     
$fids $user->getfriends(); 
     
$this->fids = empty($fids)?"":explode(","$fids); 
     
$this->fnum = empty($fids)?0:count($this->fids);
  }
  
  public function 
getids(){
     
// Return an ArrayObject of ids in the friendlist
     
return $this->fids;
  }
  
  public function 
gettotal(){
     
// Return the total number of friends
     
return $this->fnum;
  }
  
  public function 
isfriend($uid){
     
// Check if the specific user is on this friendlist
     
if(is_array($this->fids) and in_array($uid$this->fids)) return TRUE;
     else return 
FALSE;
  }
  
  public function 
display(){
     
// Display the user's friendlist     
     
$mysidia Registry::get("mysidia");
     
$document $mysidia->frame->getDocument();

     if(!
$this->isfriend($mysidia->user->uid) and $this->privacy == "protected") return FALSE;
     elseif(!
$this->fids) return FALSE;
     else{
        
// The friendlist can be displayed, so let's show the content        
        
$friendTable = new TableBuilder("friends"""FALSE);
        
$friendTable->setHelper(new FriendTableHelper);
 
        foreach(
$this->fids as $fid){
           
$friend = new Member($fid);    
           
$friend->getprofile();
           
$friend->getcontacts();       
           
$avatar = new TCell($friend->getavatar(60));
           
$avatar->setAlign(new Align("left"));
           
$info = new TCell($friendTable->getHelper()->getFriendInfo($friend));
           
$cells = new LinkedList;
           
$cells->add($avatar);
           
$cells->add($info);
           
           if(!empty(
$mysidia->user->username) and $this->user == $mysidia->user->username){
               
$action = new TCell;
               
$action->setAlign(new Align("right"));
               
$action->add(new Comment("<br><br><br><br>"));
               
$action->add(new Link("friends/delete/{$friend->uid}""Break Friendship"));
               
$cells->add($action);
           }
           
$friendTable->buildRow($cells);
        }
        
$document->add($friendTable);        
     }
     
// End of the display method
  
}
}
?>


class_member.php

  Spoiler: class_member.php 
PHP Code:
<?php

use Resource\Native\String;
use 
Resource\Collection\LinkedHashMap;

class 
Member extends User{
  protected 
$salt;
  protected 
$password;
  protected 
$session;
  protected 
$email;  
  public 
$birthday;
  public 
$membersince;
  public 
$money;
  public 
$friends;
  public 
$isloggedin;
  public 
$profile;
  public 
$contacts;
  public 
$options;
  public 
$status;
  
  public function 
__construct($userinfo){
      
// Fetch the basic member properties for users
      
      
$mysidia Registry::get("mysidia");
      if(
$userinfo instanceof String$userinfo $userinfo->getValue();
      
$userinfo = ($userinfo == "SYSTEM")?$mysidia->settings->systemuser:$userinfo;
      
$whereclause = (is_numeric($userinfo))?"uid ='{$userinfo}'":"username ='{$userinfo}'";
      
$row $mysidia->db->select("users", array(), $whereclause)->fetchObject();
      
// loop through the anonymous object created to assign properties
      
if(!is_object($row)) throw new MemberNotfoundException("The specified user {$userinfo} does not exist...");
      foreach(
$row as $key => $val){
         
// For field usergroup, instantiate a Usergroup Object
         
$this->$key $val;
         if(
$key == "usergroup"$this->usergroup = new Usergroup($val);                  
      }
      
$this->lastactivity = new DateTime();
      
$this->isloggedin UserCreator::logincheck();      
  }

  public function 
iscurrentuser(){
      
$mysidia Registry::get("mysidia");
      
$iscurrent = ($mysidia->user->username == $this->username)?TRUE:FALSE;
      return 
$iscurrent;
  }
  
  public function 
register(){
      throw new 
AlreadyLoggedinException($mysidia->lang->global_login);
  }
  
  public function 
login($username ""){
      throw new 
AlreadyLoggedinException($mysidia->lang->global_login);
  }
  
  public function 
logout(){
      
$mysidia Registry::get("mysidia");
      
$mysidia->session->destroy();
      if(
$mysidia->cookies->getcookies("mysuid") and $mysidia->cookies->getcookies("myssession")){
         
$mysidia->cookies->deletecookies();
         
$this->isloggedin "no";
         include(
"inc/config_forums.php");
         if(
$mybbenabled == 1){
            include(
"functions/functions_forums.php");   
            
mybblogout();
         }
      }
      else throw new 
Exception('The user is already logged out');
  }

  public function 
getpassword(){
      return 
$this->password;
  }

  public function 
getsalt(){
      return 
$this->salt;
  }

  public function 
getemail(){
      return 
$this->email;
  }
  
  public function 
getonlineimg(){
      
$mysidia Registry::get("mysidia");
      
$online $mysidia->db->select("online", array(), "username = '{$this->username}'")->fetchObject();
      if(
is_object($online)) $onlineimg "<img src='templates/icons/user_online.gif'>";
      else 
$onlineimg "<img src='templates/icons/user_offline.gif'>";
      return 
$onlineimg;
  }
  
  public function 
getavatar($dimension 40){
      
$mysidia Registry::get("mysidia");
      
$profile $mysidia->db->select("users_profile", array("uid""avatar"), "username = '{$this->username}'")->fetchObject();
      
$avatar = new Image($profile->avatar"avatar"$dimension);
      return 
$avatar;
  }
  
  public function 
getcash(){
      return 
$this->money;
  }
  
  public function 
changecash($amount){     
      
$mysidia Registry::get("mysidia");
      if(!
is_numeric($amount)) throw new Exception('Cannot change user money by a non-numeric value!');
      
      
$this->money += $amount;    
      if(
$this->money >= 0){ 
         
$mysidia->db->update("users", array("money" => $this->money), "username = '{$this->username}'");
         return 
TRUE;              
      }
      else throw new 
InvalidActionException("It seems that {$this->username} cannot afford this transaction.");
  }

  public function 
getVotes($time "today"){
      
$mysidia Registry::get("mysidia");
      
$date = new DateTime($time);
      
$votes $mysidia->db->select("vote_voters", array("void"), "username = '{$this->username}' and date = '{$date->format('Y-m-d')}'")->rowCount();
      return 
$votes;  
  }
  
  public function 
clickreward($amount){
      
$randamount mt_rand($amount[0], $amount[1]);
      return 
$randamount;
  }
  
  public function 
donate(User $recipient$amount){
      
$mysidia Registry::get("mysidia");      
      
// First thing first, let's update the money field for the two users
      
$this->changecash(-$amount);
      
$recipient->changecash($amount);    
      
      
// Then attempt to send an email to the recipient
      
$recipient->getoptions();
       if(
$recipient->options->newmessagenotify == 1){
         
// We are sending this user an email about the donation
         
$headers "From: {$mysidia->settings->systememail}";
         
$sitename $mysidia->settings->sitename;
         
$message "Hello {$recipient->username};\n\nYou have received {$amount} {$mysidia->settings->cost} donation from {$this->username} at {$sitename}
                        Thank You.  The 
{$siteName} team.";
                        
         
mail($recipient->email$sitename." - You Have Received a {$mysidia->settings->cost} Donation"$message$headers);
      }           
  }

  public function 
gettheme(){
      
$mysidia Registry::get("mysidia");
      
$option $mysidia->db->select("users_options", array("theme"), "username = '{$this->username}'")->fetchObject();
      return 
$option->theme;
  }
  
  public function 
getadopts(){
      return 
FALSE;
  }

  public function 
getalladopts(){
      
$mysidia Registry::get("mysidia");
      
$totals $mysidia->db->select("owned_adoptables", array(), "owner = '{$this->username}'")->rowCount();
      return 
$totals;
  }
  
  public function 
getallpms($folder "inbox"){
      
$mysidia Registry::get("mysidia");
      
$table = ($folder == "inbox")?"messages":"folders_messages"
      
$whereclause = ($folder == "inbox")?"touser='{$this->username}'":"touser='{$this->username}' AND folder='{$folder}' ORDER BY mid DESC";
      
$totalRows $mysidia->db->select($table, array(), $whereclause)->rowCount();    
      return 
$totalRows;
  }
  
  public function 
getFolder($folderPagination $pagination){
      
$mysidia Registry::get("mysidia");
      
$stmt $mysidia->db->select("folders_messages", array(), "fromuser='{$this->username}' AND folder='{$folder}' ORDER BY mid DESC LIMIT {$pagination->getLimit()},{$pagination->getRowsperPage()}");
      if(
$stmt->rowCount() == 0) throw new MessageNotfoundException;                  
      else{
          
$fields = new LinkedHashMap;
          
$fields->put(new String("messagetitle"), NULL);
          
$fields->put(new String("fromuser"), new String("getProfile"));
          
$fields->put(new String("touser"), new String("getProfile"));
          
$fields->put(new String("datesent"), NULL);
          
$fields->put(new String("mid::read"), new String(($folder == "outbox")?"getOutboxReadLink":"getDraftReadLink"));
          
$fields->put(new String("mid::delete"), new String(($folder == "outbox")?"getOutboxDeleteLink":"getDraftDeleteLink"));
          
          
$folderTable = new TableBuilder($folder);          
          
$folderTable->setAlign(new Align("center"));
          
$folderTable->buildHeaders("Message Title""FromUser""Recipient""Date Appeared""Access""Delete");          
          
$folderTable->setHelper(new MessageTableHelper);          
          
$folderTable->buildTable($stmt$fields);
          return 
$folderTable;
      }
  }
  
  public function 
getfriends(){
      return 
$this->friends;
  }
  
  public function 
getprofile(){
      
// This method instantiate a user profile object, only called in profile.php page
      
if($this->profile) return $this->profile
      else{
         
$this->profile = new UserProfile($this->uid);
         return 
$this->profile;
      }      
  }
  
  public function 
getcontacts(){
      
$mysidia Registry::get("mysidia");
      if(empty(
$this->contacts)) $this->contacts $mysidia->db->select("users_contacts", array(), "uid = '{$this->uid}'")->fetchObject();
      return 
$this->contacts;
  }
  
  public function 
formatcontacts(){
      
$sites = array("website""facebook""twitter");
      
$ims = array("msn""aim""yim""skype");
      foreach(
$sites as $site){
         
$this->contacts->$site = (empty($this->contacts->$site))?"No {$site} Information Given":$this->contacts->$site;
      }
      foreach(
$ims as $im){
         
$this->contacts->$im = (empty($this->contacts->$im))?"No {$im} Information Given":$this->contacts->$im;
      }
  }
    
  public function 
getoptions(){
      
$mysidia Registry::get("mysidia");
      if(empty(
$this->options)) $this->options $mysidia->db->select("users_options", array(), "username = '{$this->username}'")->fetchObject();
      return 
$this->options;
  }
  
  public function 
getstatus(){
      
$mysidia Registry::get("mysidia");
      if(empty(
$this->status)) $this->status $mysidia->db->select("users_status", array(), "username = '{$this->username}'")->fetchObject();
      return 
$this->status;
  }
}
?>
Reply With Quote
  #2  
Old 08-28-2016, 07:28 PM
pachoofoosh's Avatar
pachoofoosh pachoofoosh is offline
Artist
 
Join Date: Dec 2012
Location: New York
Posts: 98
Gender: Unknown/Other
Credits: 15,236
pachoofoosh is on a distinguished road
Default

What is your PHP version?
__________________
The calzones... betrayed me?
Reply With Quote
  #3  
Old 08-29-2016, 10:44 AM
Abronsyth's Avatar
Abronsyth Abronsyth is offline
A Headache Embodied
 
Join Date: Aug 2011
Location: NY
Posts: 1,011
Gender: Male
Credits: 111,754
Abronsyth is on a distinguished road
Default

If you deleted user 19 and that user was on someone's friendlist then it will result in errors. Go through the friendlists for all members and make sure 19 is not on any of them.
__________________
My Mods Site (1.3.4, 2020 Mods)
Reply With Quote
  #4  
Old 08-29-2016, 11:30 AM
Hall of Famer's Avatar
Hall of Famer Hall of Famer is offline
Administrator, Lead Coder
 
Join Date: Dec 2008
Location: South Brunswick
Posts: 4,448
Gender: Male
Credits: 327,783
Hall of Famer is on a distinguished road
Default

Just as Abronsyth said, if you delete a user, the user profiles with this user in their friend lists will get error pages. It should still work fine on other user profiles though.

And if I may ask, how did you delete user ID 19? I don't remember the original script allows you to remove users from ACP, unless I am mistaken.
__________________


Mysidia Adoptables, a free and ever-improving script for aspiring adoptables/pets site.
Reply With Quote
  #5  
Old 08-29-2016, 05:02 PM
NobodysHero's Avatar
NobodysHero NobodysHero is offline
Co-Owner of MystFell
 
Join Date: Nov 2013
Posts: 144
Gender: Female
Credits: 18,423
NobodysHero is on a distinguished road
Default

I deleted it manually through the MyPHP interface. It doesn't work on my ACP. I click "Delete User" and nothing happens. Heh. I didn't even consider the friends list!

MYSTERY SOLVED. XD Thanks, guys. <3 You're all the best!
Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -5. The time now is 04:34 AM.

Currently Active Users: 673 (0 members and 673 guests)
Threads: 4,080, Posts: 32,024, Members: 2,016
Welcome to our newest members, jolob.
BETA





What's New?

What's Hot?

What's Popular?


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.
vBCommerce I v2.0.0 Gold ©2010, PixelFX Studios
vBCredits I v2.0.0 Gold ©2010, PixelFX Studios
Emoticons by darkmoon3636