58 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			PHP
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			58 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			PHP
		
	
	
		
			Executable File
		
	
	
	
	
| <?php
 | |
| 	
 | |
| namespace Fieldprotocol\User;
 | |
| 
 | |
| use Illuminate\Database\Eloquent\Model as Eloquent;
 | |
| 
 | |
| class User extends Eloquent {
 | |
| 	
 | |
| 	protected $table = 'users';
 | |
| 	
 | |
| 	protected $fillable = [
 | |
| 		'id',
 | |
| 		'username',
 | |
| 		'first_name',
 | |
| 		'last_name',
 | |
| 		'email',
 | |
| 		'posts'
 | |
| 	];
 | |
| 	
 | |
| 	public function getFullName() {
 | |
| 		if (!$this->first_name || !$this->last_name) {
 | |
| 			return null;
 | |
| 		}
 | |
| 		
 | |
| 		return "{$this->first_name} {$this->last_name}";
 | |
| 	}
 | |
| 	
 | |
| 	public function getName() {
 | |
| 		return $this->getFullName() ?: $this->username;
 | |
| 	}
 | |
| 	
 | |
| 	public function getAvatarUrl($options = []) {
 | |
| 		$size = isset($options['size']) ? $options['size'] : 45;
 | |
| 		return 'http://www.gravatar.com/avatar/' . md5($this->email) . '?s=' . $size . '&d=identicon';
 | |
| 	}
 | |
| 	
 | |
| 	/*public function permissions() {
 | |
| 		return $this->hasOne('Fieldprotocol\User\UserPermission', 'user_id');
 | |
| 	}
 | |
| 	
 | |
| 	public function hasPermission($permission) {
 | |
| 		return (bool) $this->permissions->{$permission};
 | |
| 	}
 | |
| 	
 | |
| 	public function isAdmin() {
 | |
| 		return $this->hasPermission('is_admin');
 | |
| 	}
 | |
| 	
 | |
| 	public function isEditor() {
 | |
| 		return $this->hasPermission('is_editor');
 | |
| 	}
 | |
| 	
 | |
| 	public function isAuthor() {
 | |
| 		return $this->hasPermission('is_author');
 | |
| 	}*/
 | |
| 	
 | |
| }
 |