Ejemplo n.º 1
0
 public function post_step_4()
 {
     if (!Session::get('step_1_passed')) {
         return Redirect::to('install/step_1');
     }
     if (!Session::get('step_2_passed')) {
         return Redirect::to('install/step_2');
     }
     if (!Session::get('step_3_passed')) {
         return Redirect::to('install/step_3');
     }
     $messages = array('check_uuid' => 'The uuid provided is invalid.');
     Validator::register('check_uuid', function ($attribute, $value, $parameters) {
         return Installer::validate_uuid($value);
     });
     $rules = array('uuid' => 'required|check_uuid', 'user_name' => 'required|alpha_dash', 'avatar_first_name' => 'required|alpha_dash', 'avatar_last_name' => 'required|alpha_dash', 'email' => 'required|email', 'password' => 'required');
     $validation = Validator::make(Input::all(), $rules, $messages)->speaks(Session::get('adm_lang'));
     if ($validation->passes()) {
         Session::put('uuid', Input::get('uuid'));
         Session::put('user_name', Input::get('user_name'));
         Session::put('avatar_first_name', Input::get('avatar_first_name'));
         Session::put('avatar_last_name', Input::get('avatar_last_name'));
         Session::put('email', Input::get('email'));
         Session::put('password', Input::get('password'));
         Session::put('step_4_passed', true);
         if (!Installer::install()) {
             FirePHP::getInstance(true)->warn('installation failed');
             die;
         } else {
             $salt = md5(Installer::gen_uuid());
             $hash = md5(md5(Session::get('password') . ':' . $salt));
             //Create Default User
             $user_admin = array('uuid' => Session::get('uuid'), 'group_id' => 1, 'username' => Session::get('user_name'), 'avatar_first_name' => Session::get('avatar_first_name'), 'avatar_last_name' => Session::get('avatar_last_name'), 'hash' => $hash, 'salt' => $salt, 'password' => Hash::make(Session::get('password')), 'email' => Session::get('email'), 'status' => 'active', 'is_core' => 1, 'created_at' => date("Y-m-d H:i:s", time()), 'updated_at' => date("Y-m-d H:i:s", time()));
             $user = DB::table('users')->insert_get_id($user_admin);
             Auth::login($user);
             return Redirect::to('install/complete');
         }
     } else {
         return Redirect::to('install/step_4')->with_errors($validation)->with_input();
     }
 }