RePod / psdle

Improving everyone's favorite online download list, one loop at a time.
https://repod.github.io/psdle
MIT License
194 stars 14 forks source link

Add product ID and icon url to csv export #30

Closed rvdsoft closed 8 years ago

rvdsoft commented 8 years ago

The icon is shown in the export view but when you export to csv, there is no icon field with an icon url. Also you can filter using the product ID but the field is not shown. So it would be very much appreciated if you could add the product ID and icon url to the csv export.

EDIT: Oh yes sorry, I meant that the icon is shown in the list but not in the export view.

RePod commented 8 years ago

You're referring to this? I apologize, your original wording suddenly confused me that I allowed the icon URL to be exported and had no recollection of it.

Also, which icon URL? There are quite a few and the one PSDLE shows may not be the only one. PSDLE checks for three different icons (in increasing chance of success, but less accurate) and stops on the first it can find. This was done to surpass a fault of the original download list which sometimes wouldn't have icons or very generic icons for DLC.

Also, this is similar to #26, and I have an idea to rewrite the exporting options to export whatever you want (whatever entry info PSDLE stores) but I'm lazy.

It will happen and satisfy everybody, but I don't have a time frame for it. expect it soon. More so because there's one hurdle I don't know how to overcome without making it really slow.

RePod commented 8 years ago

screenshot_2

Here's how the new export window looks (it's rough, but functional). You can name columns whatever you want and choose what property they represent. You can add or subtract as many columns as desired, literally.

To try it (and hopefully bug test), please run PSDLE as you normally would. If using the Userscript ensure it's version 2.068. If using the Chrome extension ensure it's version 1.44.


Property renaming notes.

Before After
id uniqueID or itemID
pid productID Done?
long_desc (Catalog) description Done
date_pretty prettyDate Done
size_pretty prettySize Done
platform_og platformUseable Done

Additional custom properties to add:

rvdsoft commented 8 years ago

I've tested the new version and for the columns that matter, it finds the correct data. Great job! One problem: If you add a field in the export view, the "Column Name" is empty by default. Can't you make it so that when you select from the fields combo box, the column name changes as well instead of staying empty?

I have a game tracker app and I want to give users the option to import from a PSDLE csv file. But I need to know the column names beforehand in order do that properly.

RePod commented 8 years ago

One problem: If you add a field in the export view, the "Column Name" is empty by default. Can't you make it so that when you select from the fields combo box, the column name changes as well instead of staying empty?

Not possible while also maintaining translations, unless you mean literally copying over whatever is selected without translating it. End users would still be able to change them from their defaults.

At most, I plan to only apply the actual translations PSDLE already has (the columns you see on the table).

I could also try including the export settings as JSON with the export info, similar to what PSDLE uses to generate the export. It'd be something like [{name:'Date', target:'date_pretty'}, ...}]. Done, see two comments below.

RePod commented 8 years ago

For the previous user who commented with suggestions, I got them via email so I'll still address them:

Is it possible to save the settings of the Column Name and Property somewhere, so you don't have to choose/name them every time?

Export settings are stored temporarily in the current session as long as you export as usual. Closing the window without exporting will discard the current (not saved) settings.

As mentioned in the previous comment I could potentially include the settings used in the export itself then add an import function (which would get kind of crazy).

But do you think it's possible to remove all those "unknown" entries if we know exactly the actual category? I noticed that some themes still have "unknown" as the category, or some things that are not themes are labeled as such

That's at discretion of the Catalog. category is unknown by default (if Catalog is enabled) and overwritten as each item is checked. If it can't be determined (such as the Catalog entry not existing), it remains the same. The best I'd be able to do is make it empty if so.

RePod commented 8 years ago
PSDLE_EXPORT_SETTINGS   [{"name":"Name","target":"name"},{"name":"Platform","target":"platform"},{"name":"Size","target":"size_pretty"},{"name":"Date","target":"date_pretty"}]

d9ae939ebb61735ea6ff7acbff367e582bf3c63a The footer now includes the settings used, split with the provided separator. This isn't pushed to live though, yet.

RePod commented 8 years ago

So settings saving is coming in the near future? Good.

In a sense. I don't want PSDLE to actually store anything (even settings) permanently, just in the current session..

I'll probably add an import thing to the export window to paste a pre-made line similar to the one above and get similar results, but that's it.

is the "item counter starting at a certain number (400-something for me) and then decreasing and again increasing normally" bug still supposed to happen as of today?

That's not a bug, that's just some additional Catalog requests for things that share product IDs. When the bar actually starts going up it's fetching the individual/unique item IDs (that aren't the product IDs).

Basically, Catalog is two steps. It just so happens the bar decreases to indicate the first step.

rvdsoft commented 8 years ago

Not possible while also maintaining translations, unless you mean literally copying over whatever is selected without translating it. End users would still be able to change them from their defaults.

At most, I plan to only apply the actual translations PSDLE already has (the columns you see on the table).

I could also try including the export settings as JSON with the export info, similar to what PSDLE uses to generate the export. It'd be something like [{name:'Date', target:'date_pretty'}, ...}]. Done, see two comments below.

I've decided to just find out the columns based on the values.

A few other problems:

RePod commented 8 years ago

ps: there's no way to see/export Vita/PSTV compatibility anymore? (with non-EU accounts)

@Tyrael87 They are now available again as the vitaCompat and vitatvCompat properties respectively.

When you select the description field it contains newline characters which ruins the whole csv file. So all newlines should be removed.

I'd question why people would want to export the description, but that's why the new export exists.

Both @rvdsoft's points should be addressed, but again they're not on live.

RePod commented 8 years ago

The changes haven't been made live/confirmed stable yet, but the files available on this repository have them available.

They should be good to go in a few days at the most then you'll see them across all versions of PSDLE.

RePod commented 8 years ago

i guess it's a temporary issue that i get the categories at the bottom of the exported list?

Are you referring to the versions in this repository? If so, that's not temporary (unless I feel like reverting it in the future). As it is I currently have the last line of the export indicate what property the column is with a new column for the complete JSON:

Name Date
Game 01/01/2016
name prettyDate [{'name': 'Name', 'target': 'name'}, {'name': 'Date', 'target': 'prettyDate'}]

And the only PSTV-compatible entry i get is Need for Speed Most Wanted for Vita? I also have a couple of PSOne Classics and at least one or two of them should be PSTV-compatible according to several lists.

If I recall, your store was it-it. PS TV support shouldn't even be available unless you're using an en-us account/store. The reason it's tied to en-us is because it looks up a pre-determined URL in the Catalog which contains all the PS TV supported games, and I haven't looked into other regions yet.

RePod commented 8 years ago

You're still at the mercy of what the store lists as compatible.

screenshot_3

As shown here, only the second game is marked as PS TV compatible. However, the first is actually incompatible with PS TV and the third is but not marked as such on the store.

RePod commented 8 years ago

I guess the original scope of this issue has been resolved by the new export window.

At the time of writing this, the latest commit added a new baseGame property if Catalog is enabled and the info needed is available. Without any additional changes, the export window was instantly capable of exporting it. Therefore, in the future all, except problematic, properties should be available with no hassle.