示例#1
0
        // GET api/values
        public IEnumerable <object> Get([FromUri] Request request)
        {
            switch (request.Type)
            {
            case "query":
                return(new QueryHandler().GetPersons(
                           request.Data, request.ShowAll, request.ForceMe));

            case "initialmetadata":
                return(InitialMetadataGenerator.GetInitialMetadata());

            case "adminaddtag":
                return(AdminTagAdder.AddTag(
                           request.Data, request.TagForAnyone, request.TagType));

            case "addtag":
                var new_tag =
                    TagAdder.AddTagForPerson(request.MisparIshi, request.Data);
                return(new object[] { new { new_tag } });

            case "getme":
                return(MeGetter.GetMe());

            case "dashboard":
                return(Dashboard.ProcessDashboardRequest(
                           request.DashboardRequestType,
                           request.DashboardNumDays));
            }
            return(new object[] { });
        }
示例#2
0
        // POST api/values
        public void Post([FromBody] Request request)
        {
            switch (request.Type)
            {
            case "whatido":
                WhatIDoAdder.AddWhatIDo(
                    request.MisparIshi, request.Data);
                return;

            case "deletetag":
                TagAdder.DeleteTagForPerson(request.MisparIshi, request.Data);
                return;
            }
        }
示例#3
0
        // POST api/values
        public void Post([FromBody] Request request)
        {
            switch (request.Type)
            {
            case PersonalFieldAdder.WHAT_I_DO:
            case PersonalFieldAdder.ADD_MOBILE:
            case PersonalFieldAdder.ADD_WORK_NUMBER:
            case PersonalFieldAdder.ADD_OTHER_NUMBER:
            case PersonalFieldAdder.SEX:
                PersonalFieldAdder.AddPersonalField(
                    request.MisparIshi, request.Data, request.Type);
                return;

            case "log":
                Logger.Log(request.Logs);
                return;

            case "deletetag":
                TagAdder.DeleteTagForPerson(request.MisparIshi, request.Data);
                return;

            case "reportoddity":     // It's an oddity. We don't write bugs.
                BugReporter.ReportBug(request.Data);
                return;

            case "addadmin":
                AdminAdder.AddAdmin(request.MisparIshi, request.IsSuperAdmin);
                return;

            case "deleteadmin":
                AdminAdder.DeleteAdmin(request.MisparIshi);
                return;

            case "admindeletetag":
                AdminTagDeleter.DeleteTag(request.Data);
                return;
            }
        }
示例#4
0
        // GET api/values
        public IEnumerable <object> Get([FromUri] Request request)
        {
            switch (request.Type)
            {
            case "query":
                return(new InputHandler().GetPersons(
                           request.Data, request.ShowAll));

            case "initialmetadata":
                return(InitialMetadataGenerator.GetInitialMetadata());

            case "adminaddtag":
                return(AdminTagAdder.AddTag(request.Data, request.TagForAnyone));

            case "addtag":
                var new_tag =
                    TagAdder.AddTagForPerson(request.MisparIshi, request.Data);
                return(new object[] { new { new_tag } });

            case "message":
                return(new BotMessageHandler(request.Data).GetReply());
            }
            return(new object[] { });
        }
 public TagController(TagsGetter tagGetter, TagAdder tagAdder, TagDeleter tagDeleter)
 {
     _tagGetter  = tagGetter;
     _tagAdder   = tagAdder;
     _tagDeleter = tagDeleter;
 }