Posición | Nombre | Puntos |
---|---|---|
1 | Jorge González | 33 |
2 | Christopher Peña | 28 |
3 | Jalil Romero | 4 ½ |
4 | Rodolfo Navarro | 1 |
5 | Rolando Balboa | 1 |
This is another piece of code I've extrapolated from a Ruby on Rails project I'm currently working on. The code implmenets social login with a RoR API-based application, targeted at API clients.
The setup does not involve any browser-redirects or sessions as you would have to use working with Omniauth.
Instead, what it does is takes an access_token generated on client-side SDKs, retireves user info from the access token
and creates a new user and Identity
in the database.
This setup works with native applications as described in the Google iOS Sign In Docs (see Authenticating with a backend server)
Code is clean if it can be understood easily – by everyone on the team. Clean code can be read and enhanced by a developer other than its original author. With understandability comes readability, changeability, extensibility and maintainability.
- Follow standard conventions.
- Keep it simple stupid. Simpler is always better. Reduce complexity as much as possible.
- Boy scout rule. Leave the campground cleaner than you found it.
- Always find root cause. Always look for the root cause of a problem.
<script>console.log({{ product | json }});</script> |
var GetIpInfo = function(ipAddr) { | |
var info = null; | |
var infoUrl = "http://ipinfo.io/" + ipAddr; | |
$.ajax({ | |
url: infoUrl, | |
type: 'GET', | |
dataType: 'json', | |
async: false, | |
success: function(data) { | |
info = data; |
(function() { | |
var i = window.setInterval(function() { | |
var closeButton = document.querySelector('.pl-video-edit-remove'); | |
if (closeButton) { | |
closeButton.click(); | |
} else { | |
window.clearInterval(i); | |
} | |
}, 500); | |
})(); |