Trying to load redirected images in the feed view. Also fixing up the feed api to not quote URLs.

This commit is contained in:
Samuel Clay 2010-11-15 22:43:01 -05:00
parent 2b78b83fcb
commit 540246e30a
4 changed files with 66 additions and 106 deletions

View file

@ -6,6 +6,7 @@ import re
import mongoengine as mongo
import pymongo
import zlib
import urllib
from collections import defaultdict
from operator import itemgetter
from BeautifulSoup import BeautifulStoneSoup
@ -491,7 +492,7 @@ class Feed(models.Model):
story['story_authors'] = story_db.story_author_name
story['story_title'] = story_db.story_title
story['story_content'] = story_db.story_content_z and zlib.decompress(story_db.story_content_z)
story['story_permalink'] = story_db.story_permalink
story['story_permalink'] = urllib.unquote(urllib.unquote(story_db.story_permalink))
story['story_feed_id'] = self.pk
story['id'] = story_db.story_guid

View file

@ -200,10 +200,7 @@
<key>XCObserverAutoDisconnectKey</key>
<true/>
<key>XCObserverDefintionKey</key>
<dict>
<key>PBXStatusErrorsKey</key>
<integer>0</integer>
</dict>
<dict/>
<key>XCObserverFactoryKey</key>
<string>XCPerspectivesSpecificationIdentifier</string>
<key>XCObserverGUIDKey</key>
@ -215,58 +212,7 @@
<key>XCObserverTriggerKey</key>
<string>awakenModuleWithObserver:</string>
<key>XCObserverValidationKey</key>
<dict>
<key>PBXStatusErrorsKey</key>
<integer>2</integer>
</dict>
</dict>
<dict>
<key>XCObserverAutoDisconnectKey</key>
<true/>
<key>XCObserverDefintionKey</key>
<dict>
<key>PBXStatusWarningsKey</key>
<integer>0</integer>
</dict>
<key>XCObserverFactoryKey</key>
<string>XCPerspectivesSpecificationIdentifier</string>
<key>XCObserverGUIDKey</key>
<string>XCObserverProjectIdentifier</string>
<key>XCObserverNotificationKey</key>
<string>PBXStatusBuildStateMessageNotification</string>
<key>XCObserverTargetKey</key>
<string>XCMainBuildResultsModuleGUID</string>
<key>XCObserverTriggerKey</key>
<string>awakenModuleWithObserver:</string>
<key>XCObserverValidationKey</key>
<dict>
<key>PBXStatusWarningsKey</key>
<integer>2</integer>
</dict>
</dict>
<dict>
<key>XCObserverAutoDisconnectKey</key>
<true/>
<key>XCObserverDefintionKey</key>
<dict>
<key>PBXStatusAnalyzerResultsKey</key>
<integer>0</integer>
</dict>
<key>XCObserverFactoryKey</key>
<string>XCPerspectivesSpecificationIdentifier</string>
<key>XCObserverGUIDKey</key>
<string>XCObserverProjectIdentifier</string>
<key>XCObserverNotificationKey</key>
<string>PBXStatusBuildStateMessageNotification</string>
<key>XCObserverTargetKey</key>
<string>XCMainBuildResultsModuleGUID</string>
<key>XCObserverTriggerKey</key>
<string>awakenModuleWithObserver:</string>
<key>XCObserverValidationKey</key>
<dict>
<key>PBXStatusAnalyzerResultsKey</key>
<integer>2</integer>
</dict>
<dict/>
</dict>
</array>
<key>OpenEditors</key>
@ -370,7 +316,7 @@
<real>277</real>
</array>
<key>RubberWindowFrame</key>
<string>110 55 1075 823 0 0 1440 878 </string>
<string>255 355 1075 823 0 0 1920 1178 </string>
</dict>
<key>Module</key>
<string>PBXSmartGroupTreeModule</string>
@ -400,7 +346,7 @@
<key>_historyCapacity</key>
<integer>0</integer>
<key>bookmark</key>
<string>787361BA1291F4DE003C48E2</string>
<string>7840C49412920ACF0069B9BC</string>
<key>history</key>
<array>
<string>7842EB9911CFFC1B0066CF9D</string>
@ -429,7 +375,7 @@
<string>780960BE129184D600230C8E</string>
<string>780960BF129184D600230C8E</string>
<string>780960C91291855800230C8E</string>
<string>780960D4129188B400230C8E</string>
<string>787361BA1291F4DE003C48E2</string>
</array>
</dict>
<key>SplitCount</key>
@ -441,14 +387,14 @@
<key>GeometryConfiguration</key>
<dict>
<key>Frame</key>
<string>{{0, 0}, {776, 627}}</string>
<string>{{0, 0}, {776, 623}}</string>
<key>RubberWindowFrame</key>
<string>110 55 1075 823 0 0 1440 878 </string>
<string>255 355 1075 823 0 0 1920 1178 </string>
</dict>
<key>Module</key>
<string>PBXNavigatorGroup</string>
<key>Proportion</key>
<string>627pt</string>
<string>623pt</string>
</dict>
<dict>
<key>ContentConfiguration</key>
@ -461,14 +407,14 @@
<key>GeometryConfiguration</key>
<dict>
<key>Frame</key>
<string>{{0, 632}, {776, 150}}</string>
<string>{{0, 628}, {776, 154}}</string>
<key>RubberWindowFrame</key>
<string>110 55 1075 823 0 0 1440 878 </string>
<string>255 355 1075 823 0 0 1920 1178 </string>
</dict>
<key>Module</key>
<string>XCDetailModule</string>
<key>Proportion</key>
<string>150pt</string>
<string>154pt</string>
</dict>
</array>
<key>Proportion</key>
@ -487,9 +433,9 @@
</array>
<key>TableOfContents</key>
<array>
<string>787361A71291F3FF003C48E2</string>
<string>7840C49512920ACF0069B9BC</string>
<string>1CE0B1FE06471DED0097A5F4</string>
<string>787361A81291F3FF003C48E2</string>
<string>7840C49612920ACF0069B9BC</string>
<string>1CE0B20306471E060097A5F4</string>
<string>1CE0B20506471E060097A5F4</string>
</array>
@ -624,7 +570,7 @@
<key>StatusbarIsVisible</key>
<true/>
<key>TimeStamp</key>
<real>311555294.59665197</real>
<real>311560911.65137798</real>
<key>ToolbarConfigUserDefaultsMinorVersion</key>
<string>2</string>
<key>ToolbarDisplayMode</key>
@ -643,11 +589,11 @@
<array>
<string>1CD10A99069EF8BA00B06720</string>
<string>788997AE11C9C87C00041675</string>
<string>/Users/conesus/newsblur/media/iphone/NewsBlur.xcodeproj</string>
<string>/Users/conesus/Projects/newsblur/media/iphone/NewsBlur.xcodeproj</string>
<string>1C78EAAD065D492600B07095</string>
</array>
<key>WindowString</key>
<string>110 55 1075 823 0 0 1440 878 </string>
<string>255 355 1075 823 0 0 1920 1178 </string>
<key>WindowToolsV3</key>
<array>
<dict>
@ -677,7 +623,7 @@
<key>Frame</key>
<string>{{0, 0}, {897, 251}}</string>
<key>RubberWindowFrame</key>
<string>289 275 897 533 0 0 1440 878 </string>
<string>544 502 897 533 0 0 1920 1178 </string>
</dict>
<key>Module</key>
<string>PBXNavigatorGroup</string>
@ -696,14 +642,14 @@
<key>XCBuildResultsTrigger_Collapse</key>
<integer>1020</integer>
<key>XCBuildResultsTrigger_Open</key>
<integer>1013</integer>
<integer>1010</integer>
</dict>
<key>GeometryConfiguration</key>
<dict>
<key>Frame</key>
<string>{{0, 256}, {897, 236}}</string>
<key>RubberWindowFrame</key>
<string>289 275 897 533 0 0 1440 878 </string>
<string>544 502 897 533 0 0 1920 1178 </string>
</dict>
<key>Module</key>
<string>PBXBuildResultsModule</string>
@ -726,7 +672,7 @@
<key>TableOfContents</key>
<array>
<string>788997AE11C9C87C00041675</string>
<string>787361A91291F3FF003C48E2</string>
<string>7840C49312920ACF0069B9BC</string>
<string>1CD0528F0623707200166675</string>
<string>XCMainBuildResultsModuleGUID</string>
</array>
@ -735,7 +681,7 @@
<key>WindowContentMinSize</key>
<string>486 300</string>
<key>WindowString</key>
<string>289 275 897 533 0 0 1440 878 </string>
<string>544 502 897 533 0 0 1920 1178 </string>
<key>WindowToolGUID</key>
<string>788997AE11C9C87C00041675</string>
<key>WindowToolIsVisible</key>
@ -770,8 +716,8 @@
<string>yes</string>
<key>sizes</key>
<array>
<string>{{0, 0}, {648, 360}}</string>
<string>{{648, 0}, {647, 360}}</string>
<string>{{0, 0}, {648, 339}}</string>
<string>{{0, 339}, {648, 340}}</string>
</array>
</dict>
<key>VerticalSplitView</key>
@ -786,8 +732,8 @@
<string>yes</string>
<key>sizes</key>
<array>
<string>{{0, 0}, {1295, 360}}</string>
<string>{{0, 360}, {1295, 319}}</string>
<string>{{0, 0}, {648, 679}}</string>
<string>{{648, 0}, {647, 679}}</string>
</array>
</dict>
</dict>
@ -819,15 +765,15 @@
<string>Value</string>
<real>85</real>
<string>Summary</string>
<real>330</real>
<real>331</real>
</array>
<key>Frame</key>
<string>{{648, 0}, {647, 360}}</string>
<string>{{0, 339}, {648, 340}}</string>
<key>RubberWindowFrame</key>
<string>137 125 1295 720 0 0 1440 878 </string>
<string>591 328 1295 720 0 0 1920 1178 </string>
</dict>
<key>RubberWindowFrame</key>
<string>137 125 1295 720 0 0 1440 878 </string>
<string>591 328 1295 720 0 0 1920 1178 </string>
</dict>
<key>Module</key>
<string>PBXDebugSessionModule</string>
@ -850,18 +796,18 @@
<key>TableOfContents</key>
<array>
<string>1CD10A99069EF8BA00B06720</string>
<string>787361AE1291F470003C48E2</string>
<string>7840C49712920ACF0069B9BC</string>
<string>1C162984064C10D400B95A72</string>
<string>787361AF1291F470003C48E2</string>
<string>787361B01291F470003C48E2</string>
<string>787361B11291F470003C48E2</string>
<string>787361B21291F470003C48E2</string>
<string>787361B31291F470003C48E2</string>
<string>7840C49812920ACF0069B9BC</string>
<string>7840C49912920ACF0069B9BC</string>
<string>7840C49A12920ACF0069B9BC</string>
<string>7840C49B12920ACF0069B9BC</string>
<string>7840C49C12920ACF0069B9BC</string>
</array>
<key>ToolbarConfiguration</key>
<string>xcode.toolbar.config.debugV3</string>
<key>WindowString</key>
<string>137 125 1295 720 0 0 1440 878 </string>
<string>591 328 1295 720 0 0 1920 1178 </string>
<key>WindowToolGUID</key>
<string>1CD10A99069EF8BA00B06720</string>
<key>WindowToolIsVisible</key>
@ -989,7 +935,7 @@
<key>Frame</key>
<string>{{0, 0}, {744, 532}}</string>
<key>RubberWindowFrame</key>
<string>665 305 744 573 0 0 1440 878 </string>
<string>1124 605 744 573 0 0 1920 1178 </string>
</dict>
<key>Module</key>
<string>PBXDebugCLIModule</string>
@ -1012,13 +958,13 @@
<key>TableOfContents</key>
<array>
<string>1C78EAAD065D492600B07095</string>
<string>787361B41291F470003C48E2</string>
<string>7840C49D12920ACF0069B9BC</string>
<string>1C78EAAC065D492600B07095</string>
</array>
<key>ToolbarConfiguration</key>
<string>xcode.toolbar.config.consoleV3</string>
<key>WindowString</key>
<string>665 305 744 573 0 0 1440 878 </string>
<string>1124 605 744 573 0 0 1920 1178 </string>
<key>WindowToolGUID</key>
<string>1C78EAAD065D492600B07095</string>
<key>WindowToolIsVisible</key>

View file

@ -135,8 +135,8 @@
PBXFileDataSource_Warnings_ColumnID,
);
};
PBXPerProjectTemplateStateSaveDate = 311555062;
PBXWorkspaceStateSaveDate = 311555062;
PBXPerProjectTemplateStateSaveDate = 311560900;
PBXWorkspaceStateSaveDate = 311560900;
};
perUserProjectItems = {
78095E4F128EF39900230C8E = 78095E4F128EF39900230C8E /* PBXTextBookmark */;
@ -156,6 +156,7 @@
780960CA1291855800230C8E = 780960CA1291855800230C8E /* PBXTextBookmark */;
780960D4129188B400230C8E = 780960D4129188B400230C8E /* PBXTextBookmark */;
782D83C5128CD39B009B6727 = 782D83C5128CD39B009B6727 /* PBXTextBookmark */;
7840C49412920ACF0069B9BC /* PBXTextBookmark */ = 7840C49412920ACF0069B9BC /* PBXTextBookmark */;
7842EB9911CFFC1B0066CF9D = 7842EB9911CFFC1B0066CF9D /* PBXTextBookmark */;
7843F5AA11EEC0AA00675F64 = 7843F5AA11EEC0AA00675F64 /* PBXTextBookmark */;
7843F5AB11EEC0AA00675F64 = 7843F5AB11EEC0AA00675F64 /* PBXTextBookmark */;
@ -167,10 +168,10 @@
784DDC1C128CE7B400AE08E0 = 784DDC1C128CE7B400AE08E0 /* PBXBookmark */;
784DDC1D128CE7B400AE08E0 = 784DDC1D128CE7B400AE08E0 /* PBXBookmark */;
784DDC22128CE97100AE08E0 = 784DDC22128CE97100AE08E0 /* PlistBookmark */;
787361A61291F3FF003C48E2 /* PBXTextBookmark */ = 787361A61291F3FF003C48E2 /* PBXTextBookmark */;
787361AD1291F470003C48E2 /* PBXTextBookmark */ = 787361AD1291F470003C48E2 /* PBXTextBookmark */;
787361B71291F4D5003C48E2 /* PBXTextBookmark */ = 787361B71291F4D5003C48E2 /* PBXTextBookmark */;
787361BA1291F4DE003C48E2 /* PBXTextBookmark */ = 787361BA1291F4DE003C48E2 /* PBXTextBookmark */;
787361A61291F3FF003C48E2 = 787361A61291F3FF003C48E2 /* PBXTextBookmark */;
787361AD1291F470003C48E2 = 787361AD1291F470003C48E2 /* PBXTextBookmark */;
787361B71291F4D5003C48E2 = 787361B71291F4D5003C48E2 /* PBXTextBookmark */;
787361BA1291F4DE003C48E2 = 787361BA1291F4DE003C48E2 /* PBXTextBookmark */;
};
sourceControlManager = 788997A911C9C3F000041675 /* Source Control */;
userBuildSettings = {
@ -383,6 +384,16 @@
vrLen = 361;
vrLoc = 0;
};
7840C49412920ACF0069B9BC /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 784B50EB127E3F68008F90EA /* LoginViewController.m */;
name = "LoginViewController.m: 71";
rLen = 0;
rLoc = 2227;
rType = 0;
vrLen = 1526;
vrLoc = 1314;
};
7842EB9911CFFC1B0066CF9D /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 32CA4F630368D1EE00C91783 /* NewsBlur_Prefix.pch */;
@ -481,9 +492,9 @@
};
784B50EB127E3F68008F90EA /* LoginViewController.m */ = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {727, 1484}}";
sepNavIntBoundsRect = "{{0, 0}, {727, 1404}}";
sepNavSelRange = "{2227, 0}";
sepNavVisRange = "{1415, 1343}";
sepNavVisRange = "{1314, 1526}";
sepNavWindowFrame = "{{72, 315}, {750, 558}}";
};
};

View file

@ -1487,7 +1487,7 @@
},
open_story_link: function(story, $st) {
window.open(unescape(decodeURIComponent(story['story_permalink'])), '_blank');
window.open(story['story_permalink'], '_blank');
window.focus();
},
@ -1711,7 +1711,7 @@
break;
}
var $story_title = $.make('div', { className: 'story ' + read + ' NB-story-' + score_color }, [
$.make('a', { href: unescape(decodeURIComponent(story.story_permalink)), className: 'story_title' }, [
$.make('a', { href: story.story_permalink, className: 'story_title' }, [
$.make('span', { className: 'NB-storytitles-title' }, story.story_title),
$.make('span', { className: 'NB-storytitles-author' }, story.story_authors),
$story_tags
@ -2078,7 +2078,7 @@
$.make('div', { className: 'NB-feed-story-author' }, story.story_authors)),
$.make('div', { className: 'NB-feed-story-title-container' }, [
$.make('div', { className: 'NB-feed-story-sentiment' }),
$.make('a', { className: 'NB-feed-story-title', href: unescape(decodeURIComponent(story.story_permalink)) }, story.story_title)
$.make('a', { className: 'NB-feed-story-title', href: story.story_permalink }, story.story_title)
]),
( story.long_parsed_date &&
$.make('span', { className: 'NB-feed-story-date' }, story.long_parsed_date))
@ -2114,6 +2114,7 @@
} else {
image_count--;
}
return true;
});
})($story, story, image_count);
}
@ -2141,7 +2142,8 @@
}
}
if (_.all(this.flags.feed_view_images_loaded) && _.keys(this.flags.feed_view_images_loaded).length > 0) {
if (_.all(this.flags.feed_view_images_loaded) &&
_.keys(this.flags.feed_view_images_loaded).length > 0) {
this.fetch_story_locations_in_feed_view();
}