1. Мы продолжаем публиковать интересные статьи на тему SocialEngine 4. Одна из статей посвящена правильному выбору сервера для вашей социальной сети, а другая содержит советы по увеличению производительности платформы. Также мы добавили большую статью о пользовательских уровнях. Ознакомиться со статьями вы можете в разделе Вопросы и Ответы SocialEngine 4.
  2. Вам кажется, что ваша версия SocialEngine 4, работает медленно?

    Голосуйте. Пишите свою версию системы, железо на чем работает и количество пользователей. Будем увеличивать производительность :-) Подробнее

  3. В связи с участившимися случаями попыток продажи пользователями форума различных "сборок" коммерческих социальных платформ, обычно основанных на SocialEngine 3, вводится новое правило для форума. Запрещается создание тем или размещение в уже созданных предложений о продаже или размещение ссылок на сайты, где происходит продажа "сборок". Пользователи, которые продолжат свою коммерческую деятельность в данном направлении, будут заблокированы. Подробнее.

user_displayname

Discussion in 'Прочая Поддержка - Help Requests' started by RabbeN, Dec 6, 2010.

  1. RabbeN Thread starter User


    Offline
    Message Count:
    38
    Likes Received:
    13
    В движке по умолчанию user_displayname присваивается user_fname + user_lname Помогите переделать так, чтоб user_username присваивалось user_fname + 'user_displayname' + user_lname
    class_user.php
    Code:
      //
    	// THIS METHOD SETS A USER'S DISPLAY NAME
      //
    	// INPUT:
      //    void
      //
    	// OUTPUT: 
      //    void
      //
      
    	function user_displayname()
      {
    	  // SET DISPLAY NAME
        if( !empty($this->user_info['user_displayname']) && trim($this->user_info['user_displayname']) )
          $this->user_displayname = $this->user_info['user_displayname'];
        elseif( !empty($this->user_info['user_fname']) && !empty($this->user_info['user_lname']) && trim($this->user_info['user_fname']) && trim($this->user_info['user_lname']) )
          $this->user_info['user_displayname'] = $this->user_displayname = $this->user_info['user_fname'].' '.$this->user_info['user_lname'];
        elseif( !empty($this->user_info['user_fname']) && trim($this->user_info['user_fname']) )
          $this->user_info['user_displayname'] = $this->user_displayname = $this->user_info['user_fname'];
        elseif( !empty($this->user_info['user_lname']) && trim($this->user_info['user_lname']) )
          $this->user_info['user_displayname'] = $this->user_displayname = $this->user_info['user_lname'];
        elseif( !empty($this->user_info['user_username']) && trim($this->user_info['user_username']) )
          $this->user_info['user_displayname'] = $this->user_displayname = $this->user_info['user_username'];
        else
          $this->user_info['user_displayname'] = $this->user_displayname = $this->user_info['user_id'];
        
        $this->user_displayname_short = ( !empty($this->user_info['user_fname']) && trim($this->user_info['user_fname']) ? $this->user_info['user_fname'] : $this->user_info['user_username'] );
    	}
      
      // END user_displayname() METHOD
    
    
    
    
    
    
    
    
      //
    	// THIS METHOD UPDATES A USER'S DISPLAY NAME IN THE DATABASE
      //
    	// INPUT:
      //    $mode   - Denotes the method used to generate the displayname
      //
    	// OUTPUT: 
      //    void
      //
      
    	function user_displayname_update($user_fname=NULL, $user_lname=NULL)
      {
        global $setting, $database;
        
        // Check user exists and allowed method
        if( !$this->user_exists || (!$user_fname && !$user_lname) ) return;
        
        if( empty($this->usersetting_info) ) $this->user_settings();
        
        $delimiter = '';
        $user_displayname = '';
        $user_fname = trim((string)$user_fname);
        $user_lname = trim((string)$user_lname);
        
        switch( (int)$this->usersetting_info['usersetting_displayname_method'] )
        {
          // {First name} {Last name}
          case 1:
          default:
            if( $user_fname && $user_lname ) $delimiter = ' ';
            $user_displayname = $user_fname.$delimiter.$user_lname;
          break;
          
          // {Last name} {First name}
          case 2:
            if( $user_fname && $user_lname ) $delimiter = ' ';
            $user_displayname = $user_lname.$delimiter.$user_fname;
          break;
          
          // {Last name}, {First name}
          case 3:
            if( $user_fname && $user_lname ) $delimiter = ', ';
            $user_displayname = $user_lname.$delimiter.$user_fname;
          break;
          
          // {Last name}
          case 4:
            $user_displayname = $user_lname;
          break;
          
          // {First name}
          case 5:
            $user_displayname = $user_fname;
          break;
          
          // Custom (TODO)
          case 6:
            $user_displayname = sprintf($setting['setting_displayname_method_custom'], $user_fname, $user_lname);
          break;
        }
        
        // Fallback to username or user id
        if( !$user_displayname && $user_username )
          $user_displayname = $this->user_info['user_username'];
        elseif( !$user_displayname )
          $user_displayname = $this->user_info['user_id'];
        
        // Update the current user object?
        $this->user_info['user_displayname'] = $this->user_displayname = $user_displayname;
        
        // Update database
        $sql = "UPDATE se_users SET user_displayname='".addslashes($user_displayname)."' WHERE user_id='{$this->user_info['user_id']}' LIMIT 1";
        $database->database_query($sql);
    	}
      
      // END user_displayname_update() METHOD
    

Share This Page

All rights reserved SocEngine.ru ©