.service('StorageService', function() {
var setLoginUser = function(user_info) {
window.localStorage.login_user = JSON.stringify(user_info);
var getLoginUser = function(){
return JSON.parse(window.localStorage.login_user || '{}');
getLoginUser: getLoginUser,
setLoginUser: setLoginUser
.controller('HomeCtrl', function($scope, StorageService, $http, $q) {
var CheckLoginStatus = function(){
window.facebookConnectPlugin.getLoginStatus(
console.log('Login info is found!');
myNavigator.pushPage('profile.html');
console.log('No login info is found!');
var GetProfileInfo = function (authResponse) {
facebookConnectPlugin.api('/me?fields=email,name&access_token=' + authResponse.accessToken, null,
var LoginSuccess = function(response){
var authResponse = response.authResponse;
GetProfileInfo(authResponse).then(function(user) {
StorageService.setLoginUser({
profile_url: "http://graph.facebook.com/" + authResponse.userID + "/picture?type=large"
myNavigator.pushPage('profile.html');
console.log('Error retrieving user profile' + JSON.stringify(error));
var LoginError = function(error){
console.log('Login Error: ' + JSON.stringify(error));
// When "User cancelled dialog" error appears
if (error.errorCode === "4201"){
$scope.Login = function(){
facebookConnectPlugin.login(['email', 'public_profile'], LoginSuccess, LoginError);
.controller('ProfileCtrl', function($scope, StorageService, $http, $q) {
$scope.user = StorageService.getLoginUser();
var LogoutFromFacebook = function(){
facebookConnectPlugin.logout(
console.log('Successful logout!');
myNavigator.pushPage("home.html");
console.log('Error logging out: ' + JSON.stringify(error));
$scope.Logout = function(){
ons.notification.confirm({
message: "Are you sure you want to log out?",
buttonLabels: ["Yes", "No"],
callback: function(idx) {