public function aprobar_prepadrino_ajax() { if (Auth::check()) { $data["inside_url"] = Config::get('app.inside_url'); $data["user"] = Session::get('user'); $data["permisos"] = Session::get('permisos'); if (in_array('side_aprobar_padrinos', $data["permisos"])) { $selected_ids = Input::get('selected_id'); foreach ($selected_ids as $selected_id) { $prepadrino = Prepadrino::find($selected_id); if ($prepadrino) { //Primero creo ala persona $persona = new Persona(); $persona->nombres = $prepadrino->nombres; $persona->apellido_pat = $prepadrino->apellido_pat; $persona->apellido_mat = $prepadrino->apellido_mat; $persona->fecha_nacimiento = $prepadrino->fecha_nacimiento; $persona->direccion = $prepadrino->direccion; $persona->telefono = $prepadrino->telefono; $persona->celular = $prepadrino->celular; $persona->save(); // Creo al usuario y le asigno su información de persona $password = Str::random(8); $user = new User(); $user->num_documento = $prepadrino->dni; $user->password = Hash::make($password); $user->idtipo_identificacion = 1; $user->email = $prepadrino->email; $user->idpersona = $persona->idpersonas; $user->auth_token = Str::random(32); $user->save(); //Registro perfil padrino $user_perfil = new UsersPerfil(); $user_perfil->idperfiles = 4; $user_perfil->idusers = $user->id; $user_perfil->save(); //Regisro al padrino $padrino = new Padrino(); $padrino->como_se_entero = $prepadrino->como_se_entero; $padrino->idusers = $user->id; $padrino->idperiodo_pagos = $prepadrino->idperiodo_pagos; $padrino->idresponsable = $data["user"]->id; $padrino->save(); $descripcion_log = "Se aprobó al padrino con id {{$padrino->idpadrinos}}"; Helpers::registrarLog(3, $descripcion_log); //Generacion de Calendario de Pagos $periodo_pago = PeriodoPago::find($padrino->idperiodo_pagos); if ($periodo_pago) { $numero_pagos = $periodo_pago->numero_pagos; $fecha_vencimiento = date('Y-m-d', strtotime($padrino->created_at)); $fecha_vencimiento = date('Y-m-t', strtotime($fecha_vencimiento . '+ 1 days')); for ($indice = 1; $indice <= $numero_pagos; $indice++) { $calendario_pago = new CalendarioPago(); $calendario_pago->vencimiento = $fecha_vencimiento; $calendario_pago->num_cuota = $indice; //$calendario_pago->aprobacion = 0; $calendario_pago->idpadrinos = $padrino->idpadrinos; $calendario_pago->monto = 360 / $numero_pagos; $calendario_pago->save(); for ($offset_mes = 1; $offset_mes <= 12 / $numero_pagos; $offset_mes++) { $fecha_vencimiento = date('Y-m-t', strtotime($fecha_vencimiento . '+ 1 days')); } } $descripcion_log = "Se creó el calendario de pagos para el padrino con id {{$padrino->idpadrinos}}"; Helpers::registrarLog(3, $descripcion_log); } //Borrado logico del prepadrino $prepadrino->delete(); Mail::send('emails.userRegistration', array('user' => $user, 'persona' => $persona, 'password' => $password), function ($message) use($user, $persona) { $message->to($user->email, $persona->nombres)->subject('Registro de nuevo padrino'); }); } } return Response::json(array('success' => true, 'prepadrino_data' => $prepadrino), 200); } else { return Response::json(array('success' => false), 200); } } else { return Response::json(array('success' => false), 200); } }