diff --git a/._.bowerrc b/._.bowerrc deleted file mode 100644 index fafd92f..0000000 Binary files a/._.bowerrc and /dev/null differ diff --git a/._.gitignore b/._.gitignore deleted file mode 100644 index fafd92f..0000000 Binary files a/._.gitignore and /dev/null differ diff --git a/._.jshintrc b/._.jshintrc deleted file mode 100644 index fafd92f..0000000 Binary files a/._.jshintrc and /dev/null differ diff --git a/._.travis.yml b/._.travis.yml deleted file mode 100644 index fafd92f..0000000 Binary files a/._.travis.yml and /dev/null differ diff --git a/._LICENSE b/._LICENSE deleted file mode 100644 index 6c8ce97..0000000 Binary files a/._LICENSE and /dev/null differ diff --git a/._README.md b/._README.md deleted file mode 100644 index 6c8ce97..0000000 Binary files a/._README.md and /dev/null differ diff --git a/._bower.json b/._bower.json deleted file mode 100644 index 6c8ce97..0000000 Binary files a/._bower.json and /dev/null differ diff --git a/._karma.conf.js b/._karma.conf.js deleted file mode 100644 index 6c8ce97..0000000 Binary files a/._karma.conf.js and /dev/null differ diff --git a/._package.json b/._package.json deleted file mode 100644 index 6c8ce97..0000000 Binary files a/._package.json and /dev/null differ diff --git a/.bowerrc b/.bowerrc deleted file mode 100644 index 8c58c8e..0000000 --- a/.bowerrc +++ /dev/null @@ -1,3 +0,0 @@ -{ - "directory": "app/bower_components" -} \ No newline at end of file diff --git a/.jshintrc b/.jshintrc deleted file mode 100644 index 6f00218..0000000 --- a/.jshintrc +++ /dev/null @@ -1,13 +0,0 @@ -{ - "globalstrict": true, - "globals": { - "angular": false, - "describe": false, - "it": false, - "expect": false, - "beforeEach": false, - "afterEach": false, - "module": false, - "inject": false - } -} \ No newline at end of file diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index cce5c68..0000000 --- a/.travis.yml +++ /dev/null @@ -1,14 +0,0 @@ -language: node_js -node_js: - - "0.10" - -before_script: - - export DISPLAY=:99.0 - - sh -e /etc/init.d/xvfb start - - npm start > /dev/null & - - npm run update-webdriver - - sleep 1 # give server time to start - -script: - - node_modules/.bin/karma start karma.conf.js --no-auto-watch --single-run --reporters=dots --browsers=Firefox - - node_modules/.bin/protractor e2e-tests/protractor.conf.js --browser=firefox diff --git a/app/app.js b/app/app.js index ed2e4c8..b6dd864 100644 --- a/app/app.js +++ b/app/app.js @@ -6,5 +6,5 @@ angular.module('ngSocial', [ 'ngSocial.facebook' ]). config(['$routeProvider', function($routeProvider) { - $routeProvider.otherwise({redirectTo: '/facebook'}); + $routeProvider.otherwise({redirectTo: '/login'}); }]); diff --git a/app/facebook/facebook.html b/app/facebook/facebook.html index 5dfd303..15a1717 100644 --- a/app/facebook/facebook.html +++ b/app/facebook/facebook.html @@ -1,56 +1,53 @@ -
-
-

{{welcomeMsg}}

-
- +
+
+

{{userData.welcomeMsg}}

+
+ +
+
+

+
+

User Info

+
    +
  • ID: {{userData.userInfo._id}}
  • +
  • First Name: {{userData.userInfo.first_name}}
  • +
  • Last Name: {{userData.userInfo.last_name}}
  • +
  • Email: {{userData.userInfo.email}}
  • +
  • Gender: {{userData.userInfo.gender}}
  • +
  • Locale: {{userData.userInfo.locale}}
  • +
+
+
+
+

Permissions

+
    +
  • {{permission.permission}} - {{permission.status}}
  • +
+
+
+
+

Welcome to Facebook!

+
+
+
+ +
-
-
- -
-

-
-

User Info

-
    -
  • ID: {{userInfo.id}}
  • -
  • First Name: {{userInfo.first_name}}
  • -
  • Last Name: {{userInfo.last_name}}
  • -
  • Email: {{userInfo.email}}
  • -
  • Gender: {{userInfo.gender}}
  • -
  • Locale: {{userInfo.locale}}
  • -
-
-
-
-

Permissions

-
    -
  • {{permission.permission}} - {{permission.status}}
  • -
-
-
-
-

Welcome to Facebook!

-
- -
- - -
- - -

-
-
- -
-
- {{post.message}} -
{{post.updated_time}}
-
+ + +

+
+
+ +
+
+ {{post.post_content}} +
{{post.updated_time}}
-
-
-

You need to login to post

-
-
\ No newline at end of file +
+
+

You need to login to post

+
+
+
\ No newline at end of file diff --git a/app/facebook/facebook.js b/app/facebook/facebook.js index 8ccbf0e..495666a 100644 --- a/app/facebook/facebook.js +++ b/app/facebook/facebook.js @@ -6,12 +6,45 @@ angular.module('ngSocial.facebook', ['ngRoute']) $routeProvider.when('/facebook', { templateUrl: 'facebook/facebook.html', controller: 'FacebookCtrl' + }).when('/login', { + templateUrl: 'facebook/facebook.html', + controller: 'LoginCtrl' }); }]) -.controller('FacebookCtrl', ['$scope', '$http', function($scope, $http) { - $scope.isLoggedIn = false; +.service('refreshService', ['$http', function($http){ + self = this; + var l2Response = {} - $scope.login = function(){ + this.refresh = function(_id, callback){ + if(this.isLoggedIn) { + $http({ + url: 'http://127.0.0.1:5003/app/getUserInfo', + method: "GET", + params: { + '_id': _id + } + }).then(function(response) { + if(response) { + var responseData = JSON.parse(response.data) + l2Response.welcomeMsg = "Welcome "+ responseData.first_name; + l2Response.userInfo = responseData; + l2Response.picture = l2Response.userInfo ? (l2Response.userInfo.image_url ? l2Response.userInfo.image_url : '') : ''; + l2Response.posts = l2Response.userInfo ? (l2Response.userInfo.posts ? l2Response.userInfo.posts : []) : []; + callback(l2Response); + } + }, function(response) { + if(response && response.data) { + l2Response.error = response.data.error; + callback(l2Response); + } + }); + } + } +}]) +.controller('LoginCtrl', ['$scope', '$http', '$window', 'refreshService', function($scope, $http, $window, refreshService) { + $scope.connector = refreshService; + $scope.isLoggedIn = refreshService.isLoggedIn ? refreshService.isLoggedIn : false; + $scope.login = function(){ var username = $scope.username var password = $scope.password $http({ @@ -23,50 +56,57 @@ angular.module('ngSocial.facebook', ['ngRoute']) } }).then(function(response) { if(response) { - $scope.isLoggedIn = true; var _id = JSON.parse(response.data)['_id'] - $scope.refresh(_id); + $scope.connector.id = _id + $scope.connector.isLoggedIn = true; + $scope.isLoggedIn = true; + // $scope.userData = refreshService.refresh(refreshService.id); + $window.location.href = '/app/#/facebook'; } - }, function(response, status) { - $scope.error = response.data.error + }, function(response) { + if(response && response.data) + $scope.connector.error = response.data.error }); } $scope.logout = function(){ //$facebook.logout().then(function(){ - $scope.isLoggedIn = false; - $scope.refresh(); + $scope.connector.isLoggedIn = false; + $scope.isLoggedIn = refreshService.isLoggedIn ? refreshService.isLoggedIn : false; + $scope.userData = refreshService.refresh(refreshService.id); //}); } - - $scope.refresh = function(_id){ - if($scope.isLoggedIn) { +}]) +.controller('FacebookCtrl', ['$scope', '$http', 'refreshService', function($scope, $http, refreshService) { + self = this; + $scope.connector = refreshService; + $scope.isLoggedIn = $scope.connector.isLoggedIn; + $scope.postStatus = function(){ + if($scope.isLoggedIn) { + var post = $scope.body; + var _id = $scope.connector.id; $http({ - url: 'http://127.0.0.1:5003/app/getUserInfo', - method: "GET", - params: { - '_id': _id - } + url: 'http://127.0.0.1:5003/app/feed', + method: "POST", + headers: { 'Content-Type': 'application/x-www-form-urlencoded;charset=utf-8' }, + data: "post="+ post+"&_id="+_id }).then(function(response) { if(response) { - var responseData = JSON.parse(response.data) - $scope.userInfo = responseData + $scope.userData.msg = JSON.parse(response.data)['msg']; } + self.refresh() }, function(response) { - if(respnose && response.data) + if(response && response.data) $scope.error = response.data.error }); } - } - $scope.postStatus = function(){ - var body = this.body; - $facebook.api('/me/feed', 'post', {message: body}).then(function(response){ - $scope.msg = 'Thanks for Posting'; - $scope.refresh(); - }); - } + self.refresh = function() { + $scope.connector.refresh($scope.connector.id, function(data) { + $scope.userData = data; + }); + } - $scope.refresh(); + self.refresh(); }]); \ No newline at end of file diff --git a/app/facebook/login.html b/app/facebook/login.html new file mode 100644 index 0000000..e69de29 diff --git a/app/images/image1.png b/app/images/image1.png new file mode 100644 index 0000000..2239209 Binary files /dev/null and b/app/images/image1.png differ diff --git a/app/images/image2.png b/app/images/image2.png new file mode 100644 index 0000000..f0b801d Binary files /dev/null and b/app/images/image2.png differ diff --git a/app/images/image3.png b/app/images/image3.png new file mode 100644 index 0000000..a11b0c6 Binary files /dev/null and b/app/images/image3.png differ diff --git a/app/images/image4.png b/app/images/image4.png new file mode 100644 index 0000000..d494e95 Binary files /dev/null and b/app/images/image4.png differ diff --git a/app/images/image5.png b/app/images/image5.png new file mode 100644 index 0000000..539fcf2 Binary files /dev/null and b/app/images/image5.png differ diff --git a/app/images/image6.png b/app/images/image6.png new file mode 100644 index 0000000..e7c349c Binary files /dev/null and b/app/images/image6.png differ diff --git a/app/images/image7.png b/app/images/image7.png new file mode 100644 index 0000000..2d75013 Binary files /dev/null and b/app/images/image7.png differ diff --git a/app/images/image8.png b/app/images/image8.png new file mode 100644 index 0000000..024fe79 Binary files /dev/null and b/app/images/image8.png differ diff --git a/app/index.html b/app/index.html index 224d16d..636699d 100644 --- a/app/index.html +++ b/app/index.html @@ -1,19 +1,15 @@ - - - - - ngSocial App + Facebook - -