Progress on friend bar

This commit is contained in:
Pierre 2017-05-31 17:12:51 +02:00
parent 7eb6bf383c
commit 174ad6779a
5 changed files with 89 additions and 23 deletions

View File

@ -187,7 +187,7 @@ ComunicWeb.common.page = {
//We load specific components for logged in users //We load specific components for logged in users
if(ComunicWeb.user.userLogin.getUserLoginState()){ if(ComunicWeb.user.userLogin.getUserLoginState()){
//We load frieds list (if user is logged in) //We load frieds list (if user is logged in)
ComunicWeb.components.friendsList.display(); ComunicWeb.components.friends.bar.display();
} }
} }

View File

@ -65,27 +65,36 @@ ComunicWeb.components.friends.bar = {
}, },
/** /**
* Refresh a friend list * Refresh the listbar
* *
* @param {HTMLElement} listFriendsElem The element that contains the list of friens * @param {HTMLElement} listFriendsElem The element that contains the list of friens
* @return {Boolean} True for a success * @return {Boolean} True for a success
*/ */
refresh: function(listFriendsElem){ refresh: function(listFriendsElem){
//First, perform an API request //Refresh it
var apiURI = "friends/getList"; ComunicWeb.components.friends.list.refresh(function(list){
var params = {};
//Perform request
ComunicWeb.common.api.makeAPIrequest(apiURI, params, true, function(result){
//Check for error //Check for error
if(result.error){ if(!list){
ComunicWeb.debug.logMessage("Couldn't get a new version of friends list !"); //Log information
ComunicWeb.debug.logMessage("ERROR : Can't refresh menubar without the latest list !");
//Error
return false; return false;
} }
//Log information //Get users list to get information about them
ComunicWeb.debug.logMessage("Got a new version of friends list !"); usersID = {};
for(i in list){
//Extract user id
var processID = list[i].ID_friend;
usersID["user_"+processID] = processID;
}
//Get users ID informations
ComunicWeb.user.userInfos.getMultipleUsersInfos(usersID, function(usersInfo){
console.log(usersInfo);
});
}); });
}, },
} }

View File

@ -0,0 +1,65 @@
/**
* Friends list caching system
*
* @author Pierre HUBERT
*/
ComunicWeb.components.friends.list = {
/**
* Last list cached
*/
__list: {},
/**
* Refresh the list
*
* @param {Function} afterRefreshList What to do next
* @return {Boolean} True for a success
*/
refresh: function(afterRefreshList){
//First, perform an API request
var apiURI = "friends/getList";
var params = {};
//Perform request
ComunicWeb.common.api.makeAPIrequest(apiURI, params, true, function(result){
//Check for error
if(result.error){
ComunicWeb.debug.logMessage("Couldn't get a new version of friends list !");
//Perform next action...
afterRefreshList(false);
//Error
return false;
}
//Log information
ComunicWeb.debug.logMessage("Got a new version of friends list !");
//Cache the new list
ComunicWeb.components.friends.list.__list = result;
//Perform next action
afterRefreshList(result);
//Success
return true;
});
//It is a success
return true;
},
/**
* Get the list
*
* @return {Object} The list
*/
get: function(){
//Return the list
return this.__list;
}
};

View File

@ -1,9 +0,0 @@
/**
* Friends list caching system
*
* @author Pierre HUBERT
*/
ComunicWeb.components.friends.list = {
};

View File

@ -68,7 +68,8 @@ $config['JSfiles'] = array(
"%PATH_ASSETS%js/components/menuBar/common.js", "%PATH_ASSETS%js/components/menuBar/common.js",
"%PATH_ASSETS%js/components/menuBar/notAuthenticated.js", "%PATH_ASSETS%js/components/menuBar/notAuthenticated.js",
"%PATH_ASSETS%js/components/menuBar/authenticated.js", "%PATH_ASSETS%js/components/menuBar/authenticated.js",
"%PATH_ASSETS%js/components/friendsList/friendsList.js", "%PATH_ASSETS%js/components/friends/friendsList.js",
"%PATH_ASSETS%js/components/friends/friendsBar.js",
//User scripts //User scripts
"%PATH_ASSETS%js/user/loginTokens.js", "%PATH_ASSETS%js/user/loginTokens.js",