jshackles / Enhanced_Steam_Firefox

Enhanced Steam for Mozilla Firefox
GNU General Public License v3.0
135 stars 23 forks source link

List all unbought DLC for already owned games #320 - Not possible anymore? #92

Open last-phoenix opened 8 years ago

last-phoenix commented 8 years ago

Hello,

I was so happy that I found this thread

But it seems that the option "Hide -> DLC for games you do not own" isn't there anymore.

Or maybe I just don't see it?

Ryan-Witt commented 8 years ago

I was looking for this as well. Unfortunately, it looks like Valve removed that ability.

Yeah, unfortunately this was removed at Valves request and due to limitations they built into their API.

dragonfax commented 7 years ago

So they genuinely don't us searching for DLC we dont' own yet, and would like to purchase. Thats pretty fucked up. Especially at sale time like now.

DFNCTSC commented 6 years ago

@last-phoenix @Ryan-Witt @dragonfax It's likely possible to just reimplement the feature jshackles voluntarily removed.

+function hide_unowned_game_dlc() {
+   storage.get(function(settings) {
+       if (settings.hide_dlcunownedgames === undefined) { settings.hide_dlcunownedgames = false; storage.set({'hide_dlcunownedgames': settings.hide_dlcunownedgames}); }
+       if (settings.hide_dlcunownedgames) {
+           $(".search_result_row").each(function(index) {
+               var node = $(this);
+               if ($(this).html().match(/ico_type_dlc/)) {
+                   var appid = get_appid($(this).attr("href"));
+                   
+                   get_http('//store.steampowered.com/api/appdetails/?appids=' + appid, function (data) {
+                       var storefront_data = JSON.parse(data);
+                       $.each(storefront_data, function(application, app_data) {
+                           if (app_data.success) {                           
+                               get_http('//store.steampowered.com/api/appuserdetails/?appids=' + app_data.data.fullgame.appid, function (fullgamedata) {
+                                   var fullgame_data = JSON.parse(fullgamedata);
+                                   $.each(fullgame_data, function(fullappid, fullapp_data){                                
+                                       if (fullapp_data.success) {
+                                           if (!(fullapp_data.data.is_owned === true)) {                                             
+                                               hide_node(node[0]);
+                                               if ($(document).height() <= $(window).height()) {
+                                                   load_search_results();
+                                               }
+                                           }                                         
+                                       }
+                                   });
+                               }); 
+                           }
+                       }); 
+                   });
+               }   
+           });
+       }
+   });
+}
+

You'll notice everywhere he says Valve requested him to remove the feature -- not that Valve broke the feature.