aboutsummaryrefslogtreecommitdiffstats
path: root/Resources/friendship/core
diff options
context:
space:
mode:
Diffstat (limited to 'Resources/friendship/core')
-rw-r--r--Resources/friendship/core/FacebookFQL.js47
-rw-r--r--Resources/friendship/core/core.js3
2 files changed, 39 insertions, 11 deletions
diff --git a/Resources/friendship/core/FacebookFQL.js b/Resources/friendship/core/FacebookFQL.js
index 2d04bcb..9a011aa 100644
--- a/Resources/friendship/core/FacebookFQL.js
+++ b/Resources/friendship/core/FacebookFQL.js
@@ -16,15 +16,42 @@
}
}; // TODO: find some way to handle timeout (via Ti.Facebook....)
- fs.core.handleAllFriendPostsFQLResponse = function (result) { fs.core.handleFQLResponse(result, "processPosts"); };
- fs.core.queryAllFriendPostsFQL = function() { // TODO: make a variant that takes in user list and other filter info
+ fs.core.handleFriendIDsFQLResponse = function (result) { fs.core.handleFQLResponse(result, "processFriendIDs"); };
+ fs.core.queryFriendIDsFQL = function() {
+ var query = "SELECT uid, name, pic_square FROM user WHERE uid IN (SELECT uid2 FROM friend WHERE uid1 = " + Ti.Facebook.uid + ")"
+ Ti.Facebook.request('fql.query', {query: query}, fs.core.handleFriendIDsFQLResponse);
+ };
+
+ fs.core.handleLikeIDsFQLResponse = function (result) { fs.core.handleFQLResponse(result, "processLikeIDs"); };
+ fs.core.queryLikeIDsFQL = function(friend_ids) {
+ var query = "SELECT page_id, created_time, uid FROM page_fan WHERE uid IN (" + friend_ids.join() + ")";
+ Ti.Facebook.request('fql.query', {query: query}, fs.core.handleLikeIDsFQLResponse);
+ };
+
+ fs.core.handleAllFriendLikeIDsFQLResponse = function (result) { fs.core.handleFQLResponse(result, "processLikeIDs"); };
+ fs.core.queryAllFriendLikeIDsFQL = function() {
+ var query = "SELECT page_id, created_time, uid FROM page_fan WHERE uid IN (SELECT uid2 FROM friend WHERE uid1 = " + Ti.Facebook.uid + ")";
+ Ti.Facebook.request('fql.query', {query: query}, fs.core.handleAllFriendLikeIDsFQLResponse);
+ };
+
+ fs.core.handleLikesFQLResponse = function (result) { fs.core.handleFQLResponse(result, "processLikes"); };
+ fs.core.queryLikesFQL = function(page_ids) {
+ //var query = "SELECT page_id, name, description, page_url, pic_square, fan_count, type, website, general_info ";
+ //query += "FROM page WHERE page_id ";
+ //query += "IN (SELECT page_id FROM page_fan WHERE uid ";
+ //query += "IN (SELECT uid2 FROM friend WHERE uid1 = " + Titanium.Facebook.uid + "))";
+ //query += " limit 20";
var query = "SELECT page_id, name, description, page_url, pic_square, fan_count, type, website, general_info ";
- query += "FROM page WHERE page_id ";
- query += "IN (SELECT page_id FROM page_fan WHERE uid ";
- //query += "= " + Ti.Facebook.uid + ")";
- query += "IN (SELECT uid2 FROM friend WHERE uid1 = " + Titanium.Facebook.uid + "))";
- query += " limit 20"; // TODO: remove the limit
- Ti.API.info(query); // TODO: remove debug printout
- Ti.Facebook.request('fql.query', {query: query}, fs.core.handleAllFriendPostsFQLResponse);
- };
+ query += "FROM page WHERE page_id IN (" + page_ids.join() + ")";
+ Ti.Facebook.request('fql.query', {query: query}, fs.core.handleLikesFQLResponse);
+ };
+
+ fs.core.fetchMoreLikes = function(numLikesMore) {
+ numLikesMore = Math.min((fs.data.reverseChronoLikedIDs.length - fs.data.numLikesFetched), numLikesMore);
+ page_ids = Array();
+ for (var i = fs.data.numLikesFetched; i < fs.data.numLikesFetched + numLikesMore; i++) {
+ page_ids.push(fs.data.reverseChronoLikedIDs[i]);
+ }
+ fs.core.queryLikesFQL(page_ids);
+ };
})();
diff --git a/Resources/friendship/core/core.js b/Resources/friendship/core/core.js
index dd75086..fe6cb00 100644
--- a/Resources/friendship/core/core.js
+++ b/Resources/friendship/core/core.js
@@ -3,5 +3,6 @@
})();
Ti.include(
- '/friendship/core/FacebookFQL.js'
+ '/friendship/core/FacebookFQL.js',
+ '/friendship/core/DataManipulation.js'
)