示例#1
0
        public HitMutation(IHitService hitService,
                           IJWTService jWTService,
                           IHeroService heroService,
                           IValidatorService validatorService)
        {
            Name = "Mutation";

            Field <StringGraphType>(
                "createHit",
                arguments: new QueryArguments
            {
                new QueryArgument <NonNullGraphType <StringGraphType> > {
                    Name = "token"
                },
                new QueryArgument <NonNullGraphType <IdGraphType> > {
                    Name = "dragonId"
                }
            },
                resolve: context =>
            {
                var token    = context.GetArgument <string>("token");
                var dragonId = context.GetArgument <int>("dragonId");
                validatorService.ValidateToken(token);

                var heroName = jWTService.GetHeroNameFromToken(token);
                var hero     = heroService.GetHeroByName(heroName);

                hitService.CreateHit(hero, dragonId);

                return(null);
            });
        }
示例#2
0
 public HitController(IHitService service) : base(service)
 {
 }
示例#3
0
        public HitQuery(IHitService hitService,
                        IHeroService heroService,
                        IJWTService jWTService,
                        IValidatorService validatorService)
        {
            Name = "Query";
            Field <ListGraphType <DamageStatisticType> >(
                "getHeroDamageStatistic",
                arguments: new QueryArguments(
                    new QueryArgument <NonNullGraphType <StringGraphType> > {
                Name = "token"
            },
                    new QueryArgument <NonNullGraphType <IdGraphType> > {
                Name = "pageNumber"
            },
                    new QueryArgument <BooleanGraphType> {
                Name = "sortNameAsc"
            },
                    new QueryArgument <BooleanGraphType> {
                Name = "sortNameDesc"
            },
                    new QueryArgument <BooleanGraphType> {
                Name = "sortDamageAsc"
            },
                    new QueryArgument <BooleanGraphType> {
                Name = "sortDamageDesc"
            }
                    ),
                resolve: context =>
            {
                var token          = context.GetArgument <string>("token");
                var pageNumber     = context.GetArgument <int>("pageNumber");
                var sortNameAsc    = context.GetArgument <bool>("sortNameAsc");
                var sortNameDesc   = context.GetArgument <bool>("sortNameDesc");
                var sortDamageAsc  = context.GetArgument <bool>("sortDamageAsc");
                var sortDamageDesc = context.GetArgument <bool>("sortDamageDesc");

                validatorService.ValidateToken(token);

                var heroName        = jWTService.GetHeroNameFromToken(token);
                var heroId          = heroService.GetHeroByName(heroName).Id;
                var damageStatistic = hitService.GetHeroDamageStatistic(heroId).Result;

                damageStatistic = hitService.GetPageWithDamagesAsync(damageStatistic, pageNumber).Result;
                if (sortNameAsc)
                {
                    damageStatistic = hitService.SortByNameAsc(damageStatistic).Result;
                }

                if (sortNameDesc)
                {
                    damageStatistic = hitService.SortByNameDesc(damageStatistic).Result;
                }

                if (sortDamageAsc)
                {
                    damageStatistic = hitService.SortByDamageAsc(damageStatistic).Result;
                }

                if (sortDamageDesc)
                {
                    damageStatistic = hitService.SortByDamageDesc(damageStatistic).Result;
                }

                return(damageStatistic);
            });
        }
示例#4
0
    protected void Page_Load(object sender, EventArgs e)
    {
        i18n = new i18nHelper();
        this.Title = i18n.GetMessage("m261") + " @ " + i18n.GetMessage("m9");
        this.forwardSend.Text = i18n.GetMessage("m78");
        currentUser = WebUtility.GetCurrentKBUser();
        subjectid = currentUser.SubjectId;
        documentService = factory.GetDocumentService();
        categoryService = factory.GetCategoryService();
        ratingService = factory.GetRatingService();
        auditTrailService = factory.GetAuditTrailService();
        wfService = factory.GetWorkflowService();
        hitService = factory.GetHitService();
        documentClassService = factory.GetDocumentClassService();
        subscribeService = WebUtility.Repository.GetSubscribeService();
        docId = WebUtility.GetIntegerParameter("documentId");
        folderId = WebUtility.GetIntegerParameter("folderId", -1);
        ver = WebUtility.GetIntegerParameter("ver", 0);
        latestVersionNumber = buildVersionInfo();
        currentUserOutputConfig = WebUtility.GetUserOutputConfig(currentUser.SubjectId);
        attachMode = currentUserOutputConfig.AttachMode;
        showUsedTags = ConfigurationManager.AppSettings["ShowUsedTags"] != null ? ConfigurationManager.AppSettings["ShowUsedTags"] : "false";
        tagsAutoComplete = ConfigurationManager.AppSettings["TagsAutoComplete"] != null ? ConfigurationManager.AppSettings["TagsAutoComplete"] : "false";
        tagsSuggestListLen = ConfigurationManager.AppSettings["TagsSuggestListLen"] != null ? ConfigurationManager.AppSettings["TagsSuggestListLen"] : "10";
        subscriptionConfirm = Convert.ToBoolean(ConfigurationManager.AppSettings["SubscriptionConfirm"] != null ? ConfigurationManager.AppSettings["SubscriptionConfirm"].ToString() : "true");
        autoSubscription = Convert.ToBoolean(ConfigurationManager.AppSettings["AutoSubscription"] != null ? ConfigurationManager.AppSettings["AutoSubscription"].ToString() : "true");
        allowSendToNoPrivilegeUser = Convert.ToBoolean(ConfigurationManager.AppSettings["AllowSendToNoPrivilegeUser"] != null ? ConfigurationManager.AppSettings["AllowSendToNoPrivilegeUser"].ToString() : "true");
        TagMaxLength = ConfigurationManager.AppSettings["TagMaxLength"] != null ? ConfigurationManager.AppSettings["TagMaxLength"] : "30";
        IsSafari = (Request.Browser.Browser.ToLower().Equals("applemac-safari") && !Request.UserAgent.ToLower().Contains("chrome"));
        userHadSubscribeResource = subscribeService.UserHadSubscribedResource(currentUser.SubjectId, (int)currentUser.SubjectType, docId, (int)SubscribeRecord.ResourceType.Document);
        mailService = WebUtility.Repository.GetMailService();
        kbuserService = WebUtility.Repository.GetKBUserService();
        folderService = WebUtility.Repository.GetFolderService();
        forwardService = WebUtility.Repository.GetForwardService();
        if (ver == 0)
        {
            doc = documentService.GetDocument(currentUser, docId);
            ver = latestVersionNumber;
        }
        else
        {
            doc = documentService.GetDocument(currentUser, docId, ver);
        }
        readVersion.Text = ver.ToString();
        latestVersion.Text = latestVersionNumber.ToString();
        if (ver != latestVersionNumber)
        {
            Panel1.Visible = false;
        }
        if (folderId == -1)
        {
            FolderInfo f = documentService.GetParentFolders(currentUser, docId)[0];
            folderId = f.FolderId;
        }

        buildCategoriesList();
        buildDocumentView();

        #region For teamKube Xml Render
        if (IsACLiteSubjectProvider)
        {
            renderSpecXml = RenderSpecificXML(currentUser, doc.DocumentId, ver);
        }
        #endregion

        if(!doc.DocumentClass.ClassName.Trim().ToLower().Equals("filesystem"))
        {
            buildFileList();
        }

        buildRatingSummary();
        buildAuditTrailInfo();
        createHitInfo();
        buildRelatedTagList(20);
        buildRelatedDocumentList();
        checkWorkflowInvolved();
        isDiffDocClass = IsDiffDocumentClass();
        strDiffDocClass = String.Format(i18n.GetMessage("m801"), doc.DocumentClass.ClassName, i18n.GetMessage("m802"), i18n.GetMessage("m803"));

        isBuiltinDocumentClass = (doc.DocumentClass.IsBuiltIn == true) ? "true" : "false";
    }