// PUT: api/Users/5
 public bool Put(int id, [FromBody] User user)
 {
     user.Id = id;
     if (!CheckNoDuplicate(user))
     {
         return(false);
     }
     //CleanUserStrings(user);
     return(manager.Put(Extractables.ExtractUser(user), PrimaryKeys(id)));
 }
        // POST: api/Users
        public bool Post([FromBody] User user)
        {
            user.Id = -1;
            if (CheckNoDuplicate(user))
            {
                //CleanUserStrings(user);
                return(manager.Post(Extractables.ExtractUser(user)));
            }

            return(false);
        }
        // PUT: api/Admins/5
        public bool Put(int id, [FromBody] Admin admin)
        {
            admin.Id = id;
            if (!CheckNoDuplicate(admin))
            {
                return(false);
            }

            bool adminOk = adminManager.Put(Extractables.ExtractAdmin(admin), PrimaryKeys(id));

            bool userOk = false;

            if (adminOk)
            {
                //UsersController.CleanUserStrings(user);
                userOk = userManager.Put(Extractables.ExtractUser(admin), PrimaryKeys(id));
            }

            return(adminOk && userOk);
        }
        // POST: api/Admins
        public bool Post([FromBody] Admin admin)
        {
            admin.Id = -1;
            bool userOk = false;

            if (CheckNoDuplicate(admin))
            {
                userOk = userManager.Post(Extractables.ExtractUser(admin));
            }

            bool adminOk = false;

            if (userOk)
            {
                admin.Id = RetrieveId(admin);
                adminOk  = adminManager.Post(Extractables.ExtractAdmin(admin));
            }

            return(userOk && adminOk);
        }
        // PUT: api/Speakers/5
        public bool Put(int id, [FromBody] Speaker speaker)
        {
            speaker.Id = id;
            if (!CheckNoDuplicate(speaker))
            {
                return(false);
            }

            bool speakerOk = speakerManager.Put(Extractables.ExtractSpeaker(speaker), PrimaryKeys(id));

            bool userOk = false;

            if (speakerOk)
            {
                userOk = userManager.Put(
                    Extractables.ExtractUser(speaker), PrimaryKeys(id));
            }

            return(speakerOk && userOk);
        }
        // POST: api/Speakers
        public bool Post([FromBody] Speaker speaker)
        {
            speaker.Id = -1;
            bool userOk = false;

            if (CheckNoDuplicate(speaker))
            {
                userOk = userManager.Post(Extractables.ExtractUser(speaker));
            }

            bool speakerOk = false;

            if (userOk)
            {
                speaker.Id = RetrieveId(speaker);
                speakerOk  = speakerManager.Post(Extractables.ExtractSpeaker(speaker));
            }

            return(userOk && speakerOk);
        }