Regenerate API key
This commit is contained in:
@@ -11,6 +11,7 @@ use Illuminate\Support\Facades\Auth;
|
||||
use Jackiedo\Timezonelist\Facades\Timezonelist;
|
||||
|
||||
use App\Models\User;
|
||||
use App\Facades\Utils;
|
||||
use App\Repositories\AirlineRepository;
|
||||
use App\Repositories\AirportRepository;
|
||||
use App\Repositories\UserRepository;
|
||||
@@ -108,9 +109,24 @@ class ProfileController extends AppBaseController
|
||||
$req_data['password'] = Hash::make($req_data['password']);
|
||||
}
|
||||
|
||||
$user = $this->userRepo->update($req_data, $id);
|
||||
$this->userRepo->update($req_data, $id);
|
||||
|
||||
Flash::success('Profile updated successfully!');
|
||||
return redirect(route('frontend.profile.index'));
|
||||
}
|
||||
|
||||
/**
|
||||
* Regenerate the user's API key
|
||||
*/
|
||||
public function regen_apikey(Request $request)
|
||||
{
|
||||
$user = User::find(Auth::user()->id);
|
||||
Log::info('Regenerating API key "'.$user->pilot_id.'"');
|
||||
|
||||
$user->api_key = Utils::generateApiKey();
|
||||
$user->save();
|
||||
|
||||
flash('New API key generated!')->success();
|
||||
return redirect(route('frontend.profile.index'));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -62,21 +62,36 @@ class User extends Authenticatable
|
||||
];
|
||||
|
||||
public static $rules = [
|
||||
|
||||
'name' => 'required',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
];
|
||||
|
||||
public function getPilotIdAttribute($value)
|
||||
/**
|
||||
* @return string
|
||||
*/
|
||||
public function getPilotIdAttribute()
|
||||
{
|
||||
$length = setting('pilots.id_length');
|
||||
return $this->airline->icao . str_pad($this->id, $length, '0', STR_PAD_LEFT);
|
||||
}
|
||||
|
||||
public function getGravatarAttribute($value)
|
||||
/**
|
||||
* @return string
|
||||
*/
|
||||
public function getIdentAttribute()
|
||||
{
|
||||
return $this->getPilotIdAttribute();
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
*/
|
||||
public function getGravatarAttribute()
|
||||
{
|
||||
$size = 80;
|
||||
$default = 'https://en.gravatar.com/userimage/12856995/7c7c1da6387853fea65ff74983055386.png';
|
||||
return "https://www.gravatar.com/avatar/" .
|
||||
md5( strtolower( trim( $this->email) ) ) . "?d=" . urlencode( $default ) . "&s=" . $size;
|
||||
return 'https://www.gravatar.com/avatar/' .
|
||||
md5(strtolower(trim($this->email))) . '?d=' . urlencode($default ) . '&s=' . $size;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -27,8 +27,11 @@ Route::group([
|
||||
Route::post('flights/save', 'FlightController@save')->name('flights.save');
|
||||
Route::resource('flights', 'FlightController');
|
||||
|
||||
Route::resource('profile', 'ProfileController');
|
||||
Route::resource('pireps', 'PirepController');
|
||||
|
||||
Route::get('profile/regen_apikey', 'ProfileController@regen_apikey')
|
||||
->name('profile.regen_apikey');
|
||||
Route::resource('profile', 'ProfileController');
|
||||
});
|
||||
|
||||
Auth::routes();
|
||||
|
||||
Reference in New Issue
Block a user