aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAnqi Xu2012-06-30 16:34:05 -0400
committerAnqi Xu2012-06-30 16:34:05 -0400
commit312bbc90926d9a2d01a9c6f5a071ef20c90068e6 (patch)
tree211ecb7115053d66c86122920ac7f71c4c6e1af5
parentb586a38cc6c218361b2242cc0541eb6ef9d7f29d (diff)
downloadLikeFeed-312bbc90926d9a2d01a9c6f5a071ef20c90068e6.tar.bz2
Changed behavior of reload to remember friend filter
-rw-r--r--.settings/com.appcelerator.titanium.core.prefs13
-rw-r--r--Resources/friendship/core/FacebookFQL.js23
-rw-r--r--Resources/friendship/ui/ApplicationWindow.js8
-rw-r--r--Resources/friendship/ui/FriendSelector.js11
-rw-r--r--Resources/friendship/ui/LikeList.js28
-rw-r--r--Resources/friendship/ui/LoginWindow.js2
-rw-r--r--build.log52
-rw-r--r--tiapp.xml2
8 files changed, 77 insertions, 62 deletions
diff --git a/.settings/com.appcelerator.titanium.core.prefs b/.settings/com.appcelerator.titanium.core.prefs
deleted file mode 100644
index bf8352a..0000000
--- a/.settings/com.appcelerator.titanium.core.prefs
+++ /dev/null
@@ -1,13 +0,0 @@
-eclipse.preferences.version=1
-provisioning_profiles/development/102921B8-D171-474F-A74E-69BF1EC80A2E/appid=*
-provisioning_profiles/development/102921B8-D171-474F-A74E-69BF1EC80A2E/filepath=/Users/mimic/Library/MobileDevice/Provisioning Profiles/102921B8-D171-474F-A74E-69BF1EC80A2E.mobileprovision
-provisioning_profiles/development/102921B8-D171-474F-A74E-69BF1EC80A2E/name=iOS Team Provisioning Profile\: *
-provisioning_profiles/development/102921B8-D171-474F-A74E-69BF1EC80A2E/uuid=102921B8-D171-474F-A74E-69BF1EC80A2E
-provisioning_profiles/development/88FDBC82-D5DA-4B15-935F-0DF154ED0248/appid=*
-provisioning_profiles/development/88FDBC82-D5DA-4B15-935F-0DF154ED0248/filepath=/Users/mimic/Library/MobileDevice/Provisioning Profiles/88FDBC82-D5DA-4B15-935F-0DF154ED0248.mobileprovision
-provisioning_profiles/development/88FDBC82-D5DA-4B15-935F-0DF154ED0248/name=Sphnx_on_Anqi_s_iPhone_4S
-provisioning_profiles/development/88FDBC82-D5DA-4B15-935F-0DF154ED0248/uuid=88FDBC82-D5DA-4B15-935F-0DF154ED0248
-provisioning_profiles/development/B5FB1F66-50E9-4DF3-B419-EF7FF1D341DF/appid=*
-provisioning_profiles/development/B5FB1F66-50E9-4DF3-B419-EF7FF1D341DF/filepath=/Users/mimic/Library/MobileDevice/Provisioning Profiles/B5FB1F66-50E9-4DF3-B419-EF7FF1D341DF.mobileprovision
-provisioning_profiles/development/B5FB1F66-50E9-4DF3-B419-EF7FF1D341DF/name=Sphnx_on_Zach_s_iPhone
-provisioning_profiles/development/B5FB1F66-50E9-4DF3-B419-EF7FF1D341DF/uuid=B5FB1F66-50E9-4DF3-B419-EF7FF1D341DF
diff --git a/Resources/friendship/core/FacebookFQL.js b/Resources/friendship/core/FacebookFQL.js
index 1c6f217..823e86f 100644
--- a/Resources/friendship/core/FacebookFQL.js
+++ b/Resources/friendship/core/FacebookFQL.js
@@ -1,41 +1,54 @@
(function() {
fs.core.queryFQL = function(fqlQuery, fqlCallback) {
var fqlURL = "fql?q=" + fqlQuery.replace(/ /g, "+");
- Ti.API.info("https://graph.facebook.com/" + fqlURL);
+ //Ti.API.info("https://graph.facebook.com/" + fqlURL);
Ti.Facebook.requestWithGraphPath(fqlURL, {}, 'GET', fqlCallback);
};
fs.core.handleFQLResponse = function(response, eventName) {
if (response.success) {
+ //Ti.API.info(eventName + ": FQL response: got " + response.result.length + " Bytes");
+ if (response.result.length < 100) {
+ //Ti.API.info("> " + response.result);
+ }
var data = JSON.parse(response.result);
- Ti.API.fireEvent(eventName, {data: data});
+ //Ti.API.info(eventName + ": FQL response: parsed " + data.length + " entries");
+ Ti.App.fireEvent(eventName, {data: data});
} else if (response.error) {
- Ti.API.fireEvent("processFQLError", {what: response.error});
+ //Ti.API.info(eventName + ": FQL response error: " + response.error);
+ Ti.App.fireEvent("processFQLError", {what: response.error});
} else {
- Ti.API.fireEvent("processFQLError", {what: "unrecognized query response"});
+ //Ti.API.info(eventName + ": FQL response error: UNKNOWN");
+ Ti.App.fireEvent("processFQLError", {what: "unrecognized query response"});
}
}; // LATER: find some way to handle timeout (via Ti.Facebook....)
fs.core.handleFriendIDsFQLResponse = function (result) { fs.core.handleFQLResponse(result, "processFriendIDs"); };
fs.core.queryFriendIDsFQL = function() {
+ ////Ti.API.info("calling queryFriendIDsFQL");
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) {
+ //Ti.API.info("calling queryLikeIDsFQL:");
var query = "SELECT page_id, created_time, uid FROM page_fan WHERE uid IN (" + friend_ids.join() + ")";
+ //Ti.API.info(query);
Ti.Facebook.request('fql.query', {query: query}, fs.core.handleLikeIDsFQLResponse);
};
fs.core.handleAllFriendLikeIDsFQLResponse = function (result) { fs.core.handleFQLResponse(result, "processLikeIDs"); };
fs.core.queryAllFriendLikeIDsFQL = function() {
+ //Ti.API.info("calling queryAllFriendLikeIDsFQL");
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) {
+ //Ti.API.info("calling queryLikesFQL");
+
//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 ";
@@ -48,10 +61,12 @@
fs.core.fetchMoreLikes = function(numLikesMore) {
numLikesMore = Math.min((fs.data.reverseChronoLikedIDs.length - fs.data.numLikesFetched), numLikesMore);
+ //Ti.API.info("calling fetchMoreLikes: fetching more = " + numLikesMore + ", currently have: " + fs.data.numLikesFetched + ", total: " + fs.data.reverseChronoLikedIDs.length);
page_ids = Array();
for (var i = fs.data.numLikesFetched; i < fs.data.numLikesFetched + numLikesMore; i++) {
page_ids.push(fs.data.reverseChronoLikedIDs[i].pid);
}
fs.core.queryLikesFQL(page_ids);
};
+
})();
diff --git a/Resources/friendship/ui/ApplicationWindow.js b/Resources/friendship/ui/ApplicationWindow.js
index 067969a..85809a0 100644
--- a/Resources/friendship/ui/ApplicationWindow.js
+++ b/Resources/friendship/ui/ApplicationWindow.js
@@ -8,7 +8,7 @@
image: 'images/refresh.png',
height: 5
});
- refresh_button.addEventListener('click', fs.ui.refreshAllFriendsLikeList);
+ refresh_button.addEventListener('click', fs.ui.refreshFilteredLikeList);
var friend_selector_button = fs.ui.friendSelectorButton();
@@ -30,17 +30,17 @@
win.add(fs.ui.createLikeList());
- Ti.API.addEventListener("processFQLError", function(e) {
+ Ti.App.addEventListener("processFQLError", function(e) {
alert(e.what);
});
- Ti.API.addEventListener("refreshAllData", function(e) {
+ Ti.App.addEventListener("refreshAllData", function(e) {
if (Ti.Facebook.loggedIn) {
Ti.App.fireEvent('app:show.loader');
fs.core.queryFriendIDsFQL();
}
})
- Ti.API.fireEvent("refreshAllData");
+ Ti.App.fireEvent("refreshAllData");
tab_group.addTab(tab);
diff --git a/Resources/friendship/ui/FriendSelector.js b/Resources/friendship/ui/FriendSelector.js
index 62ba42d..47114db 100644
--- a/Resources/friendship/ui/FriendSelector.js
+++ b/Resources/friendship/ui/FriendSelector.js
@@ -25,16 +25,7 @@
});
done_button.addEventListener('click', function() {
- var friend_ids = Array();
- for (key in fs.data.friends) {
- if (fs.data.friends[key].selected) {
- friend_ids.push(fs.data.friends[key].uid);
- }
- }
- if (friend_ids.length > 0) {
- fs.ui.refreshLikeList(friend_ids);
- }
-
+ fs.ui.refreshFilteredLikeList();
win.close();
});
diff --git a/Resources/friendship/ui/LikeList.js b/Resources/friendship/ui/LikeList.js
index 9e7f872..227972d 100644
--- a/Resources/friendship/ui/LikeList.js
+++ b/Resources/friendship/ui/LikeList.js
@@ -68,7 +68,7 @@
url: key.page_url
}));
});
-
+
var profile_icon = Ti.UI.createImageView({
image:key.pic_square,
width:50,
@@ -206,7 +206,8 @@
//Ti.App.fireEvent('app:show.loader');
- Ti.API.addEventListener("processFriendIDs", function(e) {
+ Ti.App.addEventListener("processFriendIDs", function(e) {
+ //Ti.API.info("processFriendIDs callback");
fs.data.friends = Array();
for (var i = 0; i < e.data.length; i++) {
fs.data.friends[e.data[i].uid.toString()] = {uid: e.data[i].uid, pic: e.data[i].pic_square, name: e.data[i].name, selected: true};
@@ -215,7 +216,8 @@
fs.core.queryAllFriendLikeIDsFQL();
});
- Ti.API.addEventListener("processLikeIDs", function(e) {
+ Ti.App.addEventListener("processLikeIDs", function(e) {
+ //Ti.API.info("processLikeIDs callback");
fs.data.likeIDs = Array();
fs.data.reverseChronoLikedIDs = Array();
@@ -260,14 +262,14 @@
fs.core.fetchMoreLikes(fs.data.NUM_LIKES_PER_FETCH);
} else {
fs.data.isQueryingMore = false;
- ll_view.footerTitle = "0 / 0 loaded";
+ ll_view.footerTitle = "loading failed";
Ti.App.fireEvent('app:hide.loader');
}
});
- Ti.API.addEventListener("processLikes", function(e) {
+ Ti.App.addEventListener("processLikes", function(e) {
+ //Ti.API.info("processLikes callback");
for ( key in e.data ) {
-
e.data[key].more = fs.data.reverseChronoLikedIDs[fs.data.numLikesFetched];
e.data[key].friend_name = friend_name_from_uid(e.data[key].more.uid);
fs.data.numLikesFetched++;
@@ -304,10 +306,22 @@
}
};
- fs.ui.refreshLikeList = function(friend_ids) {
+ fs.ui.refreshLikeList = function(friend_ids) { // called by fs.ui.refreshFilteredLikeList; do not call directly unless you know friend_ids
if (Ti.Facebook.loggedIn) {
Ti.App.fireEvent('app:show.loader');
fs.core.queryLikeIDsFQL(friend_ids);
}
};
+
+ fs.ui.refreshFilteredLikeList = function() {
+ var friend_ids = Array();
+ for (key in fs.data.friends) {
+ if (fs.data.friends[key].selected) {
+ friend_ids.push(fs.data.friends[key].uid);
+ }
+ }
+ if (friend_ids.length > 0) {
+ fs.ui.refreshLikeList(friend_ids);
+ }
+ };
})();
diff --git a/Resources/friendship/ui/LoginWindow.js b/Resources/friendship/ui/LoginWindow.js
index 4a48c64..569aaac 100644
--- a/Resources/friendship/ui/LoginWindow.js
+++ b/Resources/friendship/ui/LoginWindow.js
@@ -6,7 +6,7 @@
Ti.Facebook.addEventListener('login', function(e) {
if (e.success) {
fs.app.mainTabGroup.open();
- Ti.API.fireEvent("refreshAllData");
+ Ti.App.fireEvent("refreshAllData");
} else {
alert('Could not log into Facebook');
}
diff --git a/build.log b/build.log
index 7ec6809..be01f25 100644
--- a/build.log
+++ b/build.log
@@ -1,24 +1,32 @@
Logfile initialized
-[INFO] logfile = /Users/me/Desktop/LikeFeed/build.log
-[DEBUG] /Users/me/Library/Application Support/Titanium/mobilesdk/osx/2.0.2.GA/android/builder.py simulator LikeFeed /Users/me/Downloads/android-sdk-macosx /Users/me/Desktop/LikeFeed com.likefeed.LikeFeed 4 HVGA
-[INFO] Building LikeFeed for Android ... one moment
-[DEBUG] signal caught: 3
-[DEBUG] calling emulator kill on 55988
-[ERROR] Exception occured while building Android project:
-[ERROR] Traceback (most recent call last):
-[ERROR] File "/Users/me/Library/Application Support/Titanium/mobilesdk/osx/2.0.2.GA/android/builder.py", line 2112, in <module>
-[ERROR] s.run_emulator(avd_id, avd_skin, avd_name, add_args)
-[ERROR] File "/Users/me/Library/Application Support/Titanium/mobilesdk/osx/2.0.2.GA/android/builder.py", line 484, in run_emulator
-[ERROR] handler(3,None)
-[ERROR] File "/Users/me/Library/Application Support/Titanium/mobilesdk/osx/2.0.2.GA/android/builder.py", line 469, in handler
-[ERROR] os.kill(p.pid, signal.SIGTERM)
-[ERROR] OSError: [Errno 3] No such process
-[INFO] Titanium SDK version: 2.0.2 (05/30/12 10:21 2ff31a3)
+[INFO] logfile = /Users/mimic/workspace/LikeFeed/build.log
+[DEBUG] /Users/mimic/Library/Application Support/Titanium/mobilesdk/osx/2.1.0.GA/android/builder.py simulator Sphnx /Users/mimic/Downloads/android-sdk-macosx /Users/mimic/workspace/LikeFeed com.sphnx.Sphnx 1 HVGA /127.0.0.1:51328
+[INFO] Building Sphnx for Android ... one moment
+[INFO] Titanium SDK version: 2.1.0 (06/28/12 12:16 6e3cab6)
[DEBUG] Waiting for device to be ready ...
-[TRACE] adb devices returned 0 devices/emulators
-[TRACE] adb devices returned 0 devices/emulators
-[TRACE] adb devices returned 0 devices/emulators
-[TRACE] adb devices returned 0 devices/emulators
-[TRACE] adb devices returned 0 devices/emulators
-[TRACE] adb devices returned 0 devices/emulators
-[ERROR] Timed out waiting for emulator to be ready, you may need to close the emulator and try again
+[TRACE] adb devices returned 1 devices/emulators
+[DEBUG] Device connected... (waited 0 seconds)
+[DEBUG] waited 0.012860 seconds on emulator to get ready
+[DEBUG] com.sphnx.Sphnx installed? True
+[INFO] Fastdev server running, deploying in Fastdev mode
+[INFO] Copying CommonJS modules...
+[INFO] Copying project resources..
+[INFO] Tiapp.xml unchanged, skipping class generation
+[DEBUG] Processing Android resource drawables
+[DEBUG] found drawable-long-land-hdpi splash screen at /Users/mimic/workspace/LikeFeed/Resources/android/images/res-long-land-hdpi/default.png
+[DEBUG] found drawable-long-land-ldpi splash screen at /Users/mimic/workspace/LikeFeed/Resources/android/images/res-long-land-ldpi/default.png
+[DEBUG] found drawable-long-port-hdpi splash screen at /Users/mimic/workspace/LikeFeed/Resources/android/images/res-long-port-hdpi/default.png
+[DEBUG] found drawable-long-port-ldpi splash screen at /Users/mimic/workspace/LikeFeed/Resources/android/images/res-long-port-ldpi/default.png
+[DEBUG] found drawable-notlong-land-hdpi splash screen at /Users/mimic/workspace/LikeFeed/Resources/android/images/res-notlong-land-hdpi/default.png
+[DEBUG] found drawable-notlong-land-ldpi splash screen at /Users/mimic/workspace/LikeFeed/Resources/android/images/res-notlong-land-ldpi/default.png
+[DEBUG] found drawable-notlong-land-mdpi splash screen at /Users/mimic/workspace/LikeFeed/Resources/android/images/res-notlong-land-mdpi/default.png
+[DEBUG] found drawable-notlong-port-hdpi splash screen at /Users/mimic/workspace/LikeFeed/Resources/android/images/res-notlong-port-hdpi/default.png
+[DEBUG] found drawable-notlong-port-ldpi splash screen at /Users/mimic/workspace/LikeFeed/Resources/android/images/res-notlong-port-ldpi/default.png
+[DEBUG] found drawable-notlong-port-mdpi splash screen at /Users/mimic/workspace/LikeFeed/Resources/android/images/res-notlong-port-mdpi/default.png
+[INFO] Waiting for SDCard to become available..
+[INFO] Re-launching application ... Sphnx
+[INFO] Launching application ... Sphnx
+[TRACE] Launch output: Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.sphnx.Sphnx/.SphnxActivity }
+
+[INFO] Forwarding host port 51328 to device for debugging.
+[DEBUG] signal caught: 15
diff --git a/tiapp.xml b/tiapp.xml
index a455030..12bdc59 100644
--- a/tiapp.xml
+++ b/tiapp.xml
@@ -13,7 +13,7 @@
<target device="android">true</target>
<target device="blackberry">false</target>
</deployment-targets>
- <sdk-version>1.6.2</sdk-version>
+ <sdk-version>1.8.3.v20120529164726</sdk-version>
<id>com.sphnx.Sphnx</id>
<name>Sphnx</name>
<version>1.0</version>