public void AddCard( IMagicCardDefinition cardDefinition, int quantity, MagicGrade grade, MagicLanguage language, bool isFoil, bool updateTotals) { var binderCard = new MagicBinderCard() { CardId = cardDefinition.CardId, Grade = grade, Language = language, IsFoil = isFoil, Quantity = quantity }; var viewModel = new MagicBinderCardViewModel(cardDefinition, binderCard); _sortedCards.Add(binderCard.RowId, viewModel); _cards.Add(viewModel); _magicCollection.Cards.Add(binderCard); viewModel.PriceChanged += Card_PriceChanged; if (updateTotals) { CalculateTotals(); } }
public void Write( string fileName, IEnumerable <IMagicBinderCardViewModel> cards, MagicLanguage language, MagicGrade grade) { Write( fileName, cards, language, grade, new Func <IMagicBinderCardViewModel, int>((card) => card.Quantity)); }
public static string CreateGetArticlesUrl( string name, MagicLanguage language, bool isExact, int?startIndex) { var builder = new StringBuilder(); builder.Append("articles/"); builder.Append(WebUtility.UrlEncode(name)); if (startIndex.HasValue) { builder.Append("/" + startIndex.Value); } return(builder.ToString()); }
public void AddCards( IEnumerable <FoundMagicCardViewModel> cards, MagicGrade grade, MagicLanguage language, bool isFoil) { foreach (var card in cards) { AddCard( card.Definition, card.Quantity, card.Grade.HasValue ? card.Grade.Value : grade, card.Language.HasValue ? card.Language.Value : language, isFoil, false); } CalculateTotals(); }
public static string CreateGetProductsUrl( string name, MagicLanguage language, bool isExact, int?startIndex) { var builder = new StringBuilder(); builder.Append("products/"); builder.Append(WebUtility.UrlEncode(name) + "/1/"); builder.Append((int)language + "/"); builder.Append(isExact ? "true" : "false"); if (startIndex.HasValue) { builder.Append("/" + startIndex.Value); } return(builder.ToString()); }
public void Write( string fileName, IEnumerable <IMagicBinderCardViewModel> cards, MagicLanguage language, MagicGrade grade, Func <IMagicBinderCardViewModel, int> quantitySelector) { var outputCsv = new CsvWriter(File.CreateText(fileName)); outputCsv.WriteField("Count"); outputCsv.WriteField("Name"); outputCsv.WriteField("Edition"); outputCsv.WriteField("Foil"); outputCsv.WriteField("Language"); outputCsv.WriteField("Condition"); outputCsv.WriteField("Comment"); outputCsv.NextRecord(); string lastSetCode = ""; MagicSetDefinition definition = null; foreach (var card in cards) { if (lastSetCode != card.Definition.SetCode) { lastSetCode = card.Definition.SetCode; definition = StaticMagicData.SetDefinitionsBySetCode[lastSetCode]; } outputCsv.WriteField(quantitySelector(card)); outputCsv.WriteField(PatchCardName(card.NameEN), true); outputCsv.WriteField(PatchSetName(definition.Name.Replace("Magic: The Gathering�Conspiracy", "Conspiracy")), true); outputCsv.WriteField(card.IsFoil ? "foil" : null); outputCsv.WriteField(card.Language.HasValue ? card.Language.Value.ToString() : language.ToString()); outputCsv.WriteField(card.Grade.HasValue ? card.Grade.Value.ToCsv() : grade.ToCsv()); outputCsv.WriteField(card.Comment); outputCsv.NextRecord(); } outputCsv.Dispose(); }