412 lines
20 KiB
JavaScript
412 lines
20 KiB
JavaScript
|
angular.module('starter.controllers', [])
|
||
|
|
||
|
/*======================================
|
||
|
= AppCtrl - Main =
|
||
|
======================================*/
|
||
|
|
||
|
.controller('AppCtrl', function($scope, $rootScope, $ionicModal, $timeout, $http, $ionicPopup, $location) {
|
||
|
|
||
|
|
||
|
// Form data for the login modal
|
||
|
$scope.loginData = {};
|
||
|
|
||
|
|
||
|
var newNotes = false;
|
||
|
$scope.logged = false;
|
||
|
|
||
|
var userStr = window.localStorage['userInfo'] || null;
|
||
|
if(userStr !== null)
|
||
|
$scope.userData = JSON.parse(userStr);
|
||
|
else
|
||
|
$scope.userData = null;
|
||
|
|
||
|
// Create the login modal that we will use later
|
||
|
$ionicModal.fromTemplateUrl('templates/login.html', {
|
||
|
scope: $scope
|
||
|
}).then(function(modal) {
|
||
|
$scope.modal = modal;
|
||
|
});
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
$scope.isLoggedIn = function(){
|
||
|
if($scope.userData == null)
|
||
|
return false;
|
||
|
console.log("[JCE] [Info] User hase loged in once!");
|
||
|
return true;
|
||
|
};
|
||
|
|
||
|
$scope.newNotes = function(){
|
||
|
var newNote = window.localStorage['newNotes'] || "false";
|
||
|
return (newNote == "true") ? true : false;
|
||
|
};
|
||
|
|
||
|
|
||
|
|
||
|
// Triggered in the login modal to close it
|
||
|
$scope.closeLogin = function() {
|
||
|
$scope.modal.hide();
|
||
|
};
|
||
|
|
||
|
// Open the login modal
|
||
|
$scope.login = function() {
|
||
|
$scope.modal.show();
|
||
|
};
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
$scope.logout = function(){
|
||
|
localStorage.clear();
|
||
|
navigator.app.exitApp();
|
||
|
};
|
||
|
|
||
|
|
||
|
$scope.$watch(window.localStorage['logged'], function() {
|
||
|
console.log('[JCE] [INFO]: CHANGED!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!');
|
||
|
var tempBool = (window.localStorage['logged'] || false);
|
||
|
if(tempBool == "true")
|
||
|
$scope.logged = true;
|
||
|
else
|
||
|
$scope.logged = false;
|
||
|
|
||
|
});
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
})
|
||
|
|
||
|
|
||
|
////////////////////////////////////////////////////////////////
|
||
|
|
||
|
.controller('PlaylistsCtrl', function($scope) {
|
||
|
$scope.playlists = [
|
||
|
{ title: 'Reggae', id: 1 },
|
||
|
{ title: 'Chill', id: 2 },
|
||
|
{ title: 'Dubstep', id: 3 },
|
||
|
{ title: 'Indie', id: 4 },
|
||
|
{ title: 'Rap', id: 5 },
|
||
|
{ title: 'Cowbell', id: 6 }
|
||
|
];
|
||
|
})
|
||
|
|
||
|
.controller('PlaylistCtrl', function($scope, $stateParams) {
|
||
|
|
||
|
|
||
|
})
|
||
|
|
||
|
/*=============================================
|
||
|
= Grades - controller =
|
||
|
=============================================*/
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
.controller('GradesCtrl', function($scope, $stateParams, $http) {
|
||
|
var gradesStr = window.localStorage['grades'] || null;
|
||
|
var fixGrades = new Array;
|
||
|
var j = 0;
|
||
|
//console.log(gradesStr);
|
||
|
if(gradesStr != null){
|
||
|
grades = JSON.parse(gradesStr);
|
||
|
for(var i = 0; i < grades.length ; i++){
|
||
|
console.log("In loop #: "+i);
|
||
|
console.log(JSON.stringify(fixGrades));
|
||
|
if( i != 0){
|
||
|
if(grades[i].subject_code != grades[i-1].subject_code){
|
||
|
fixGrades.push({
|
||
|
"subject": grades[i].subject,
|
||
|
"credits": grades[i].credits,
|
||
|
"subject_code": grades[i].subject_code,
|
||
|
"year": grades[i].year,
|
||
|
"tests": [{
|
||
|
"moed": grades[i].moed,
|
||
|
"final_grade": grades[i].final_grade
|
||
|
}]
|
||
|
});
|
||
|
j++;
|
||
|
}else{
|
||
|
fixGrades[j-1].tests.push({
|
||
|
"moed": grades[i].moed,
|
||
|
"final_grade": grades[i].final_grade
|
||
|
});
|
||
|
}
|
||
|
}else{
|
||
|
fixGrades.push({
|
||
|
"subject": grades[i].subject,
|
||
|
"credits": grades[i].credits,
|
||
|
"subject_code": grades[i].subject_code,
|
||
|
"year": grades[i].year,
|
||
|
"tests": [{
|
||
|
"moed": grades[i].moed,
|
||
|
"final_grade": grades[i].final_grade
|
||
|
}]
|
||
|
});
|
||
|
j++;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
console.log(JSON.stringify(fixGrades));
|
||
|
|
||
|
$scope.grades = fixGrades;
|
||
|
}
|
||
|
|
||
|
|
||
|
$scope.getMedal = function(grade){
|
||
|
if(grade < 55){
|
||
|
return "https://wiki.openttd.org/images/1/10/Face-Sick-120px.png";
|
||
|
}else if( 55<= grade && grade < 70){
|
||
|
return "https://encrypted-tbn2.gstatic.com/images?q=tbn:ANd9GcT6UK4UUxagOktpvJR_P433nvOeTDuV3rOxd0Mswo8T-tRueFmN";
|
||
|
}else if( 70<= grade && grade < 80){
|
||
|
return "https://encrypted-tbn2.gstatic.com/images?q=tbn:ANd9GcRz0_NkZPM9FSymaCqFObwGPQFA9vRGZ82DEM7jfFU6xQ3qLbu8oQ";
|
||
|
}else if( 80<= grade && grade < 95){
|
||
|
return "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAkGBxATDw8UEBIQFhUVFRAPEBQVFBYVDxQVFBQWFhgUFRQYHCggGRonHhUUITEhJSkrLjEuFx8zODMsNygtLisBCgoKDg0OGxAQGiwkHyQsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLC8sLCwsLCwsLCwsLCwsLCwsLCwsLCwsLP/AABEIAMwAzAMBEQACEQEDEQH/xAAcAAABBQEBAQAAAAAAAAAAAAAAAQIDBAUGBwj/xABJEAABAwICBQYKBgcHBQAAAAABAAIDBBEFEgYhMUFRImFxgZGhBxMyQlJykrHB0RYjM1Ni4RQVQ2Nzk7IIJFSC0uLwFzRklKP/xAAaAQEAAgMBAAAAAAAAAAAAAAAAAgMBBAUG/8QAMxEAAgIBAgIIBQUBAAMBAAAAAAECAxEEMRIhBRMyQVFhcZEUFSKhsUJSgdHh8CMzwWL/2gAMAwEAAhEDEQA/APcUAIAQAgBACAEAIAQAgBACAEAIAQAgBACAEAIAQAgBACAEAIAQAgBACAEAIAQEc8zGNLnua0DaXEAdpWJSUVlszGLk8JGPJpRBe0IlmP7phLfbNh3rTnr6ltz9DZWjs/VhepA7GK13kU0TBxllu72WD4rXl0hN9mPuyxaatbyb9EMM+IHbNTt5mxOd/U5VPW3vbC/gmqqV3P3G3rv8W3/12/6lH4zUeK9v9M9XT+37h46vGyohd60Nv6XJ8deu9ew6qn9r9xwxaub5UVNJ6r3RnscCrF0lYt4oi9LU9m19yZmlDB9vDPFz5c8ftMutiHSVT7SaK3opfpaZr0OIQzC8MjHj8JBI6RtC3IWwsWYvJrTrnB4ksFlWEAQAgBACAEAIAQAgBACAEAIAQAgK9bWxwsL5Xta0bye4cTzKE7I1rik8InCEpvEVkw5MXqZv+3Z4pn3so+sPOyL4u7FzrNdKXKtYXi/6NuOnhDtvL8F/ZCzBoy4OmL5n+lKcwHqs8lvYtOScnmby/Mu6xpYjyXkaDWWFhs4blnhK8i5UwMiZUwMiFqi0ZyNIUWjORpCg0SyMIUGjJRqcLiec2XK7aHsOSQf5goYaeUWKbxjuJIa6sg3ioj4Os2oA5nbHdYC3aekbYcp819yqenqnt9L+xuYXjEM9wx1njy43cmVvS0+9dinU13L6X/HeaNtE6+0uXj3GgrykEAIAQAgBACAEAIAQAgBAY2LY3kd4qBokm9G/IjHpSO3Dm2laeo1ar+mPOX49TZp07kuKXKP59ChT4bd4kqHGWXc4i0bOaNnmjn2rmS4py4pvL/7Y2uNJcMFhf9uaICkkV5FDVLBjIuVZwYyGVZwMhlWMGcjS1RaM5GkKDRnIwhQaJZEyLHCMhkTgHENdGoSrJKRRraBryCbtc3Wx7TaRp5j8FThxeVuWRnyx3Figx18ThHWWynksqBqaeAkHmnn2LraXpHP0W+/9mtdpU/qr9v6OkBXWNAVACAEAIAQAgBACAEBz+L4q97zBSkZh9tLtbCDuHGTm3Ln6rV8P0V7978P9NyihY47Nu5eP+CUFEyJuVgOs3cTre473OO8rnxjgulNyfMtgKxIryOAViRjI4BSwRyLlUsDIuVMDIhCjgZGkKLRnIwhQaJJjbKGDORQ1SURkeGKxQINiOjWHAypEMka15wLFIqzwggggEHUQdhWpOBdGRUw+vdSODXkupjqBOt0B6d8fuW5ote631dm3d5f4Rv06tXFHtfn/AE69rgQCCCDrBGsEHeCvQJ52OU1gVACAEAIAQAgBAYmP4m8FsEBHjXi7nbRCzYXnn4DitHWanq1wR7T+xtaelS+uey+78CChpGRMDGDUNZJ1ucTtc47yVzIrBszk5PLLbQrUitjwFYkQZIArEjGRwCmkRyOyqXCYyGVOEZEIUWjORhCg0ZyMIUGiSG2UMEhQsowyQK5EGBWGBjmquSJJlaVi1bIl0WUp2A3BGrYRuWhZE2IshwKvNNIIXn6l5tA4/s3n9kT6J3di6fRuuw+qm/Qp1VHGusjv3+fmdeu8csEAIAQAgBAU8WxBsELpHC9tTWja9x1NaOclVXWqqDmyyqt2SUUcv+kxUsT562WNjnnPM9xAGbcxnEDYAFw4qdss7tm/ZOK5LklscrX+FJly2ipJZuD5D4qLqFi49gW/XopfqeDVlf4GY/TzG3a2wULBwySuPaZFsLSQXeyrrZDofCTi8f21JSSDfk8ZG7vLh3LPw0e5jrGbeG+F2kJAqqeopzsLreNi7W6+5RdDWxnrDucGxukqmZqWeKUb8jgXDmc3a09IWOBrczxGmApYMZCyYGRpCi0ZyMIVbRJDHBVtEkRlVMmgCIEdXWxRML5pI42DWXPcGsHWVZHL2IM43FPCrh8ZIgE1S790y0ftusOxbCokyt2JHO1PhRxF5/u9DAwbjK98juxuUKxaZd7I9YykfCDje0xUJHDxUg7/ABixLR1vxMq2SLFL4UpQbVlFlG98Di4ew/X3laV3ReexL3LoarG6OnoMbo66Nwhla/Vy2eTMy+wlh1jp5lw79PbRL61j8HRpujLnFnWaK4m57HQym8sVgTvezzZPgedej6P1fX14e6OfrKOrlxR2ZvLoGmCAEAIAQHnOnmlkUEwc4Z/FEspoQdc1QRyjzNYCLncXcVy7lLUXcEdo7+pvQxTVl7y/BybKMV7mzVziZPNadTGA7mN3DvXRhXGCxFGlKTe5Zmw7xQ5DRbmUzBQkqUBWkqkBSqHMd5QBQGPJR5JBJTvfFINbXscWuHWN3MgO10V8LVRA5sWKN8ZHsFSxv1zf4jBqeOcWPMVFxRnJ7Jh1dDPEyWCRkkbxdr2m7T+fMoNGckxCg0SRG5VNE0RuVTJIieQASbADWSdgHElVMmebaT+E0BzocMa2aQHK6dwJp2ccgFvGHn2dK2KtM3zkVTt7kcTUUU1Q/wAZXzSSu2gOPIb6rBqat2MIx2RS22XI44mCzWhSMA+qQFeSrQFSaoB22KAyZ4y14kgc6ORpu1zTZw/5wUZwjOPDJZRmMnF5R32hWnRkkjMwDamEHPbU2eHzyB6Q1Otzalwp6d6G5Ww7D38jp1WLUQdct+49wikDmtc03DgHNO4gi4K7yaayjmNNPDHLJgEAICjjmItp6aaZ1uQ0uF9l93eqrrOrg5FlUOOaifOOHVL6modUy3IFxGD6Nyb9JOsqOnp6qGO/d+pm+3rJuXd3eh2VPXwyAB3JO4q8qJZZZGDUcze1AZNZJG/ZqKAw6l5aUBSfVICu+qQFWeYEWKA0NC9Mp8LqA6Ml9O8j9IhvySN72ei8d+9YaB9K4ZiMVRBFNA4OjkaHscOB3HgRrBHEKmRNE5VTJoieqWTR4lp5phJXyvpaVxbSsJbK8ajUFp1i/wB2Du39C2qacfU9yqc8mTSsZE0BgC2CsJKpAV5KpAVpKpAVpKtAVpKtAVpKpAU31bmPZJGbPYQ5p5x8FGcIzi4y2ZmMnF5R9LeCjSBtXh7LbWWaRwBvYdAIcOpaujbinU94/juNnVYk1Yv1fnvO0W4aoIAQHmvh0xMx4f4pp1yHlercNHe7uWpe+K2Ffnl/wbNK4a5z/j3PKsPeGRNA4LbNYc+q50BPT469mom4QEk2IRyDUbFAZFZUOG3WEBlSVSArvqkBXfVICtJUoD2X+zvpA4iqo3m4aP0mEHcCQ2QDmuWnrVVi7yUT2cla7Zacr4SMWbDQuYXFrqhwpmuG0BwJcQd3JBHWp1rilzIy5I8oOCCKMeJIIstoqMiomLTY6kBUkq0BWkq0BWkq0BWkqkBXkq0BWfUoCJ0pKA9e/s9YoW1EsRJyus3mu4Et72O7Vp2Pg1MX+5NextQXHRJftafufQK3DVBACA8d8NYMkFY7dC6ij6LvLne9q5vHnW48Fg3ZLGmXm8nl7KrkjoXSNIikqkBXkqkBXfV86AjfiB3lAU5KpAQOmKAjLigEQG/obi9XS1DpqMSF+QxuLGZ7NcQdYsfR7lhpPcyjs/8AqRjno1H8j/aq+CBnLErtNampbG3EYpQ1rrhzoy
|
||
|
}else{
|
||
|
return "https://encrypted-tbn1.gstatic.com/images?q=tbn:ANd9GcRR0zMfWYUcjYyXjGUQY3tDj04rIFfi_CThbaolxTt_38eL1hkFmQ";
|
||
|
}
|
||
|
|
||
|
return "sdfgg";
|
||
|
};
|
||
|
|
||
|
|
||
|
})
|
||
|
|
||
|
/*=============================================
|
||
|
= JCE News - controller =
|
||
|
=============================================*/
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
.controller('JCENewsCtrl', function($scope, $stateParams, $http) {
|
||
|
var notesStr = window.localStorage['notes'] || null;
|
||
|
console.log(notesStr);
|
||
|
if(notesStr != null)
|
||
|
$scope.newss = JSON.parse(notesStr);
|
||
|
|
||
|
|
||
|
|
||
|
})
|
||
|
|
||
|
|
||
|
/*=============================================
|
||
|
= Login Controller =
|
||
|
=============================================*/
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
.controller('LoginCtrl', function($scope, $stateParams, $http, $location, $ionicPopup, $ionicViewService, $state) {
|
||
|
|
||
|
function getNotes(){
|
||
|
var notes = window.localStorage['notes'] || null;
|
||
|
return $http.get('https://mipo.jce.ac.il/index.php/site/studentMessages').then(function(resp) {
|
||
|
if(notes === null){
|
||
|
window.localStorage['notes'] = JSON.stringify(resp.data);
|
||
|
return true;
|
||
|
}else if(notes === JSON.stringify(resp.data)){
|
||
|
return false;
|
||
|
}else{
|
||
|
window.localStorage['notes'] = JSON.stringify(resp.data);
|
||
|
return true;
|
||
|
}
|
||
|
$scope.$apply();
|
||
|
console.log("[JCE] [INFO] Got JCE News!");
|
||
|
}, function(err) {
|
||
|
console.error('ERR', err);
|
||
|
// err.status will contain the status code
|
||
|
})
|
||
|
}
|
||
|
|
||
|
|
||
|
|
||
|
var userStr = window.localStorage['userInfo'] || null;
|
||
|
|
||
|
if(userStr !== null){
|
||
|
|
||
|
if(getNotes() == true){
|
||
|
window.localStorage['newNotes'] = "true";
|
||
|
}
|
||
|
$ionicViewService.nextViewOptions({
|
||
|
disableBack: true
|
||
|
});
|
||
|
|
||
|
$location.path( "/app/home" ); //Start app
|
||
|
}
|
||
|
else
|
||
|
$scope.userData = null;
|
||
|
|
||
|
|
||
|
// Perform the login action when the user submits the login form
|
||
|
$scope.doLogin = function() {
|
||
|
|
||
|
console.log('[JCE] [Info] Doing login', $scope.loginData);
|
||
|
|
||
|
//JCE Login shit:
|
||
|
var request = "https://mipo.jce.ac.il/index.php/site/login?_dc=1419773997764&formValues=%7B%22form_fields%22%3A%7B%22name%22%3A%22"+$scope.loginData.username+"%22%2C%22pwd%22%3A%22"+$scope.loginData.password+"%22%7D%7D&callback=JSON_CALLBACK";
|
||
|
|
||
|
$http.get(request).then(function(resp) {
|
||
|
console.log('Success', resp);
|
||
|
console.log('!!!\n'+JSON.stringify(resp.data)+'\n!!!', resp);
|
||
|
if(resp.data.guest == false){
|
||
|
|
||
|
window.localStorage['name'] = $scope.loginData.username;
|
||
|
window.localStorage['pass'] = $scope.loginData.password;
|
||
|
|
||
|
$scope.userData = resp.data;
|
||
|
window.localStorage['userInfo'] = JSON.stringify(resp.data);
|
||
|
|
||
|
|
||
|
// // if(getNotes() == true){
|
||
|
// window.localStorage['newNotes'] = "true";
|
||
|
// // }
|
||
|
|
||
|
// window.localStorage['logged'] = "true";
|
||
|
|
||
|
// // $state.forceReload();
|
||
|
|
||
|
// // $state.go($state.current, {}, {reload: true});
|
||
|
// //
|
||
|
var alertPopup = $ionicPopup.alert({
|
||
|
title: 'ההתחברות בוצעה בהצלחה!',
|
||
|
template: 'עקב בעיות גרסה. התוכנה תיסגר עכשיו. אנא כנס שוב כדי להנות מן האפשוריות'
|
||
|
});
|
||
|
alertPopup.then(function(res) {
|
||
|
console.log('[JCE] [Info] Popup Confirmed - wrong Username/Password');
|
||
|
navigator.app.exitApp();
|
||
|
$scope.closeLogin();
|
||
|
});
|
||
|
|
||
|
$ionicViewService.nextViewOptions({
|
||
|
disableBack: true
|
||
|
});
|
||
|
$location.path( "/app/home" );
|
||
|
|
||
|
|
||
|
|
||
|
console.log("[JCE] [Info] Login Was SUCCESSFULL!!", resp);
|
||
|
}else{
|
||
|
var alertPopup = $ionicPopup.alert({
|
||
|
title: 'הזנה שגויה',
|
||
|
template: 'וודא כי שם המשתמש וסיסמה נכונים'
|
||
|
});
|
||
|
alertPopup.then(function(res) {
|
||
|
console.log('[JCE] [Info] Popup Confirmed - wrong Username/Password');
|
||
|
$scope.closeLogin();
|
||
|
});
|
||
|
console.log("Login Faild!", resp);
|
||
|
}
|
||
|
}, function(err) {
|
||
|
var alertPopup = $ionicPopup.alert({
|
||
|
title: 'שגיאת התחברות',
|
||
|
template: 'ישנה שגיאת התחברות - נסה מאוחר יותר'
|
||
|
});
|
||
|
alertPopup.then(function(res) {
|
||
|
console.log('[JCE] [Info] Popup Confirmed - Error Network');
|
||
|
$scope.closeLogin();
|
||
|
});
|
||
|
console.error('[JCE] [error] ERR', err);
|
||
|
// err.status will contain the status code
|
||
|
});
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
$scope.logout = function(){
|
||
|
localStorage.clear();
|
||
|
navigator.app.exitApp();
|
||
|
};
|
||
|
|
||
|
|
||
|
};
|
||
|
})
|
||
|
|
||
|
/*=======================================
|
||
|
= home Controller =
|
||
|
=======================================*/
|
||
|
|
||
|
|
||
|
.controller('homeCtrl', function($scope, $stateParams, $ionicViewService, $location, $timeout, $rootScope, ApiService) {
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
$scope.update = function(){
|
||
|
console.log("[JCE] [info]: Refreshing...");
|
||
|
ApiService.update();
|
||
|
if(window.localStorage['newNotes'] === "true")
|
||
|
$scope.newNotes = true;
|
||
|
else
|
||
|
$scope.newNotes = false;
|
||
|
|
||
|
if(window.localStorage['newGrades'] === "true")
|
||
|
$scope.newGrades = true;
|
||
|
else
|
||
|
$scope.newGrades = false;
|
||
|
|
||
|
$timeout(function() {
|
||
|
$scope.$broadcast('scroll.refreshComplete'); //close the popup after 3 seconds for some reason
|
||
|
}, 3000);
|
||
|
|
||
|
|
||
|
};
|
||
|
|
||
|
|
||
|
|
||
|
$scope.update();
|
||
|
|
||
|
$scope.goToNotes = function(){
|
||
|
window.localStorage['newNotes'] = "false";
|
||
|
$scope.newNotes = false;
|
||
|
$ionicViewService.nextViewOptions({
|
||
|
disableBack: true
|
||
|
});
|
||
|
$location.path( "/app/jcenews" );
|
||
|
};
|
||
|
|
||
|
$scope.goToGrades = function(){
|
||
|
window.localStorage['newGrades'] = "false";
|
||
|
$scope.newGrades = false;
|
||
|
$ionicViewService.nextViewOptions({
|
||
|
disableBack: true
|
||
|
});
|
||
|
$location.path( "/app/grades" );
|
||
|
};
|
||
|
|
||
|
$scope.isLoggedIn = function(){
|
||
|
if($scope.userData == null)
|
||
|
return false;
|
||
|
console.log("[JCE] [Info] User hase loged in once!");
|
||
|
return true;
|
||
|
};
|
||
|
|
||
|
$scope.$watch('isLoggedIn', function() {
|
||
|
//
|
||
|
});
|
||
|
|
||
|
$scope.version = "0.1.13alfa-develop_perview";
|
||
|
|
||
|
if(window.localStorage['newNotes'] == "true"){
|
||
|
$scope.newNotes = true;
|
||
|
}else{
|
||
|
$scope.newNotes = false;
|
||
|
}
|
||
|
|
||
|
var userStr = window.localStorage['userInfo'] || null;
|
||
|
if(userStr !== null)
|
||
|
$scope.userData = JSON.parse(userStr);
|
||
|
else
|
||
|
$scope.userData = null;
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
});
|
||
|
|
||
|
|