* @var array
*/
protected $hidden = ['password', 'remember_token'];
+
+ /**
+ * Returns the user's avatar,
+ * Uses Gravatar as the avatar service.
+ * @param int $size
+ * @return string
+ */
+ public function getAvatar($size = 50)
+ {
+ $emailHash = md5(strtolower(trim($this->email)));
+ return '//www.gravatar.com/avatar/' . $emailHash . '?s=' . $size . '&d=identicon';
+ }
}
text-align: left;
border: none;
padding: $-xs $-xs;
+ vertical-align: middle;
}
th {
font-weight: bold;
}
.logo-container {
- padding: $-l $-s;
+ padding: $-l $-s 0 $-s;
color: #CCC;
.logo {
display: block;
}
}
+.user-overview {
+ margin-top: $-m;
+ .user-name {
+ display: inline-block;
+ vertical-align: top;
+ padding: $-m $-s;
+ }
+}
+
.search-box {
input {
padding: $-s 0;
color: #888;
border-bottom: 1px solid #EEE;
+ font-size: 0.9em;
+ .left {
+ float: left;
+ }
+ .left + .right {
+ margin-left: 30px + $-s;
+ }
+}
+
+.avatar {
+ border-radius: 100%;
}
\ No newline at end of file
<div class="padded row clearfix">
<div class="col-md-12 logo-container">
<a href="/" class="logo">BookStack</a>
- <div><i class="zmdi zmdi-account"></i> {{ Auth::user()->name }}</div>
+ <div class="user-overview">
+ <img class="avatar" src="{{Auth::user()->getAvatar(50)}}" alt="{{ Auth::user()->name }}">
+ <span class="user-name">
+ {{ Auth::user()->name }}
+ </span>
+ </div>
</div>
</div>
</header>
<table class="table">
<tr>
<th>Name</th>
- <th>Created By</th>
+ <th colspan="2">Created By</th>
<th>Revision Date</th>
<th>Actions</th>
</tr>
@foreach($page->revisions as $revision)
<tr>
<td>{{$revision->name}}</td>
- <td>{{$revision->createdBy->name}}</td>
+ <td style="line-height: 0;"><img class="avatar" src="{{ $revision->createdBy->getAvatar(30) }}" alt="{{$revision->createdBy->name}}"></td>
+ <td> {{$revision->createdBy->name}}</td>
<td><small>{{$revision->created_at->format('jS F, Y H:i:s')}} ({{$revision->created_at->diffForHumans()}})</small></td>
<td>
<a href="{{$revision->getUrl()}}" target="_blank">Preview</a>
{{--Requires an Activity item with the name $activity passed in--}}
-@if($activity->user) {{$activity->user->name}} @endif
+@if($activity->user)
+ <div class="left">
+ <img class="avatar" src="{{ $activity->user->getAvatar(30) }}" alt="{{$activity->user->name}}">
+ </div>
+@endif
-{{ $activity->getText() }}
+<div class="right">
+ @if($activity->user)
+ {{$activity->user->name}}
+ @endif
-@if($activity->entity())
- <a href="{{ $activity->entity()->getUrl() }}">{{ $activity->entity()->name }}</a>
-@endif
+ {{ $activity->getText() }}
+
+ @if($activity->entity())
+ <a href="{{ $activity->entity()->getUrl() }}">{{ $activity->entity()->name }}</a>
+ @endif
-@if($activity->extra) "{{$activity->extra}}" @endif
+ @if($activity->extra) "{{$activity->extra}}" @endif
-<br>
+ <br>
-<span class="text-muted"><small><i class="zmdi zmdi-time"></i>{{ $activity->created_at->diffForHumans() }}</small></span>
\ No newline at end of file
+ <span class="text-muted"><small><i class="zmdi zmdi-time"></i>{{ $activity->created_at->diffForHumans() }}</small></span>
+</div>
<form action="/users/{{$user->id}}" method="POST">
{!! csrf_field() !!}
<input type="hidden" name="_method" value="DELETE">
- <a href="/user/{{$user->id}}" class="button muted">Cancel</a>
+ <a href="/users/{{$user->id}}" class="button muted">Cancel</a>
<button type="submit" class="button neg">Confirm</button>
</form>
</div>
</div>
</div>
- <div class="page-content">
- <h1>Edit User</h1>
-
- <form action="/users/{{$user->id}}" method="post">
- {!! csrf_field() !!}
- <input type="hidden" name="_method" value="put">
- @include('users/form', ['model' => $user])
- </form>
+ <div class="row">
+ <div class="page-content">
+ <div class="row">
+ <div class="col-md-6">
+ <h1>Edit User</h1>
+ <form action="/users/{{$user->id}}" method="post">
+ {!! csrf_field() !!}
+ <input type="hidden" name="_method" value="put">
+ @include('users/form', ['model' => $user])
+ </form>
+ </div>
+ <div class="col-md-6">
+ <h1> </h1>
+ <div class="shaded padded margin-top">
+ <p>
+ <img class="avatar" src="{{ $user->getAvatar(80) }}" alt="{{ $user->name }}">
+ </p>
+ <p class="text-muted">You can change your profile picture at <a href="http://en.gravatar.com/">Gravatar</a>.</p>
+ </div>
+ </div>
+ </div>
+ </div>
</div>
+
@stop
<h1>Users</h1>
<table class="table">
<tr>
+ <th></th>
<th>Name</th>
<th>Email</th>
</tr>
@foreach($users as $user)
<tr>
+ <td style="line-height: 0;"><img class="avatar" src="{{$user->getAvatar(40)}}" alt="{{$user->name}}"></td>
<td><a href="/users/{{$user->id}}">{{$user->name}}</a></td>
<td>{{$user->email}}</td>
</tr>