Fixed wrong images download for two side cards (clean cards*.db and images needed)

This commit is contained in:
Oleg Agafonov 2018-01-07 22:29:37 +04:00
parent 86857e2e0f
commit c07e3d327c
4 changed files with 32 additions and 21 deletions

View file

@ -432,7 +432,12 @@ public class DownloadPictures extends DefaultBoundedRangeModel implements Runnab
throw new IllegalStateException("Second side card can't have empty name.");
}
url = new CardDownloadData(card.getSecondSideName(), card.getSetCode(), card.getCardNumber(), card.usesVariousArt(), 0, "", "", false, card.isDoubleFaced(), true);
CardInfo secondSideCard = CardRepository.instance.findCard(card.getSecondSideName());
if (secondSideCard == null){
throw new IllegalStateException("Can''t find second side card in database: " + card.getSecondSideName());
}
url = new CardDownloadData(card.getSecondSideName(), card.getSetCode(), secondSideCard.getCardNumber(), card.usesVariousArt(), 0, "", "", false, card.isDoubleFaced(), true);
url.setType2(isType2);
allCardsUrls.add(url);
}

View file

@ -208,10 +208,16 @@ public final class CardImageUtils {
if (card.getUsesVariousArt()) {
finalFileName = cardName + '.' + card.getCollectorId() + ".full.jpg";
} else {
int len = card.getCollectorId().length();
if (Character.isLetter(card.getCollectorId().charAt(len - 1))) {
finalFileName = cardName + card.getCollectorId().charAt(len - 1) + ".full.jpg";
if (card.getUsesVariousArt()){
// only various arts can be same name, but different postfixes (a,b,c,d,e)
int len = card.getCollectorId().length();
if (Character.isLetter(card.getCollectorId().charAt(len - 1))) {
finalFileName = cardName + card.getCollectorId().charAt(len - 1) + ".full.jpg";
} else {
finalFileName = cardName + prefixType + ".full.jpg";
}
} else {
// normal cards with same names;
finalFileName = cardName + prefixType + ".full.jpg";
}
}