コード例 #1
0
ファイル: SkinTesterModule.cs プロジェクト: Nensec/FRTools
 public async Task Preview(string skinId, int dragonId, [ExactValuePrecondition("-s")] string swapSilhouette, [ExactValuePrecondition("-apparel")] string apparel = null)
 {
     await StartPreview().ContinueWith(async msg =>
     {
         var result = await SkinTester.GenerateOrFetchPreview(skinId, dragonId, true);
         if (!result.Success)
         {
             await msg.Result.ModifyAsync(x => x.Embed = ErrorEmbed(result.GetDiscordErrorMessage).Build());
         }
         else
         {
             SaveStatistics(result);
             await msg.Result.ModifyAsync(x => x.Embed = GeneratedPreviewEmbed(result, apparel != null));
         }
     });
 }
コード例 #2
0
ファイル: SkinController.cs プロジェクト: Nensec/FRTools
        public async Task <ActionResult> Preview(PreviewModelPost model)
        {
            if (!ModelState.IsValid)
            {
                return(RedirectToRoute("Preview", new { model.SkinId }));
            }

            PreviewResult result = null;

            if (model.DragonId != null)
            {
                result = await SkinTester.GenerateOrFetchPreview(model.SkinId, model.DragonId.Value, model.SwapSilhouette, model.Force);
            }
            else if (!string.IsNullOrWhiteSpace(model.ScryerUrl))
            {
                result = await SkinTester.GenerateOrFetchPreview(model.SkinId, model.ScryerUrl, model.Force);
            }
            else if (!string.IsNullOrWhiteSpace(model.DressingRoomUrl))
            {
                result = await SkinTester.GenerateOrFetchPreview(model.SkinId, model.DressingRoomUrl, model.Force);
            }

            if (result == null || !result.Success)
            {
                AddErrorNotification(result?.GetHtmlErrorMessage);
                return(RedirectToRoute("Preview", new { model.SkinId }));
            }

            await SavePreviewStatistics(result);

            return(View("PreviewResult", new PreviewModelPostViewModel
            {
                SkinId = model.SkinId,
                Result = result,
                Dragon = result.Dragon
            }));
        }