Saltar al contenido

Kohana – Change Status User with Ajax Jquery Post

jquery-ajax-change-status

Si necesitamos realizar el cambio de estado de un registro mediante Ajax, Jquery podemos utilizar lo siguiente:

JQuery



$("body").on("click", ".userStatus", function(){		
		/**/
		var status_new = 0;
		if( $(this).is(':checked') ){			
			status_new = 1;
        }else{
			status_new = 0;
        }		
		/**/
		$div =  $(this).parent().parent().parent();			
		/**/
		$($div).css("width", "20px");
		$($div).css("height", "20px");
		$($div).css('background-image', 'url(http://blog.juliopari.com/wp-content/uploads/2013/06/ajax-loader-.gif)');
		$($div).css('background-size', '20px');
		$($div).empty();
		/**/
		$.post("/backend/ajax/updatestatususer",{
                user_id:	$(this).attr("data-user-id"),
				status:	status_new
		},function(data){				
			$($div).css('background-image', 'none');	
			$($div).css("width", "auto");
			$($div).css("height", "auto");
			$($div).html(data);			
		});
    });

Controller:


public function action_updatestatususer(){
		$ms = "vacio";
		if($this->request->post('status')==0){
			$rs_user = ORM::factory('user_user', $this->request->post('user_id'));		
			$rs_user->status='des'; 		
			$rs_user->save();
			$flag = 0;			
		}		
		if($this->request->post('status')==1){
			$rs_user = ORM::factory('user_user', $this->request->post('user_id'));		
			$rs_user->status='act'; 			
			$rs_user->save();
			$flag = 1;			
			//Envio de correo de activacion
		}
		
		$view_status = View::factory('backend/user/status')
								->set("flag", $flag)
								->set("rs_user", $rs_user);
		$this->response->body($view_status);		
	}
	

Si te ha interesado este artículo y deseas un apoyo o asesoría en algún requerimiento, envíame un mensaje a: (info@juliopari.com) o sino a través de Linkedin: https://www.linkedin.com/in/juliopari/