添加了封禁功能

This commit is contained in:
yuki
2017-06-13 17:57:04 +08:00
parent 62e5774c78
commit 25a03d588c
8 changed files with 95 additions and 5 deletions
+10
View File
@@ -0,0 +1,10 @@
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class AdminEvent extends Model
{
//
}
+12 -2
View File
@@ -53,6 +53,14 @@ class AuthController extends Controller
}
if ($user->baned) {
$nowdate = time();
$banedstart = $user->banedstart;
$date = $nowdate-$banedstart;
if($date>($user->banedtime)*86400 && $user->banedtime!=-1)
{
$user->baned = 0;
return Redirect::to('/');
}
// log start
$log = new AuthLog();
$log->user_id = $user->id;
@@ -60,8 +68,10 @@ class AuthController extends Controller
$log->event = "login_banned";
$log->save();
// log end
//
return Redirect::back()->withInput()->withErrors('You\'re banned!');
//
if($user->banedtime == -1)
return Redirect::back()->withInput()->withErrors('你已经被永久封禁!');
return Redirect::back()->withInput()->withErrors('你已经被封禁!'.ceil($user->banedtime-($date/86400)).'天后解禁!');
}
//Successfully logged in
+26 -1
View File
@@ -28,6 +28,7 @@ use Hash;
use Mail;
use Image;
use App\Ticket;
use App\AdminEvent;
class UserController extends Controller
{
@@ -299,7 +300,31 @@ class UserController extends Controller
$ticket->type = 2;
$ticket->message = $input['reason'];
$ticket->save();
return View::make('common.errorPage')->withErrors('举报成功!');
return view::make('common.errorPage')->withErrors('举报成功!');
}
public function banPage(Request $request, $user_id)
{
$data = [];
$data['user_id'] = $user_id;
return view::make('user.banPage')->with($data);
}
public function setBan(Request $request, $user_id)
{
$input = $request->all();
$user = User::find($user_id);
$user->baned = 1;
$user->banedtime = $input['count'];
$user->banedstart = time();
$user->update();
$event = new AdminEvent;
$event->admin_id = $request->session()->get('user_id');
$event->target_user = $user_id;
$event->event = "ban";
$event->message = $input['reason'];
$event->save();
return Redirect::to('/user/'.$user_id);
}
}
+2
View File
@@ -70,6 +70,8 @@ Route::group(['middleware' => ['web']],function () {
Route::get('/message/getHistoryMessage', "MessageController@getHistoryMessage");
Route::get('/message/getNewMessage', "MessageController@getNewMessage");
Route::get('/message/startConversation/{receiver}', "MessageController@startConversation");
Route::get('/user/{user_id}/banpage', "UserController@banPage");
Route::post('/setBan/{user_id}', "UserController@setBan");
});
Route::get('/user/sell', "UserController@mygoods")->middleware('auth');
@@ -23,6 +23,8 @@ class CreateUsersTable extends Migration
$table->boolean('havecheckedemail');
$table->tinyInteger('role');
$table->boolean('baned');
$table->integer('banedtime');
$table->integer('banedstart');
$table->timestamps();
});
}
@@ -20,6 +20,8 @@ class CreateAdminEventsTable extends Migration
$table->string('event');
$table->integer('ticket_id')->nullable();
$table->text('message');
$table->integer('banedtime');
$table->integer('banedstart');
$table->timestamps();
});
}
+2 -2
View File
@@ -116,8 +116,8 @@
<td>
<form action="/repo/{{ $repo->id }}/solve" method="POST">
{!! csrf_field() !!}
<input type="hidden" name="setstate" value="2">
<input type="submit" class="button" value="完成">
<input type="hidden" name="setstate" value="2" />
<input type="submit" class="button" value="完成" />
</form>
</td>
@else
+39
View File
@@ -0,0 +1,39 @@
@extends('layout.master')
@section('title', "封禁设置")
@section('content')
<div style="width:480px; float:left; margin-right:100px;">
<h6>暂时封禁</h6>
<form action="/setBan/{{ $user_id }}" method="POST">
{!! csrf_field()!!}
<label class="right inline">封禁理由:</label>
<textarea name="reason"></textarea>
<label class="right inline">举报单号(可为空):</label>
<textarea name="ticket_id"></textarea>
<label class="right inline">请选择封禁时间(天):</label>
<div class="input-group gb_right" style="max-width:180px;">
<input type="number" name="count" value="1" class="input-group-field" min="1" />
<div class="input-group-button">
<input type="submit" class="button" value="确认" />
</div>
</div>
</form>
</div>
<div style="width:480px; float:left">
<h6>永久封禁</h6>
<form action="/setBan/{{ $user_id }}" method="POST">
{!! csrf_field() !!}
<label class="right inline">封禁理由:</label>
<textarea name="reason"></textarea>
<label class="right inline">举报单号(可为空):</label>
<textarea name="ticket_id"></textarea>
<div>
<input type="submit" class="button" value="永久封禁" />
<input type="hidden" name="count" value="-1" />
</div>
</form>
</div>
@endsection