Ejemplo n.º 1
0
        public string AddNetworkAdmin(int networkId, string adminEmail)
        {
            try
            {

                if (adminEmail != null)
                {
                    User admin = userManager.GetUserByEmail(adminEmail);
                    if (admin != null)
                    {
                        Network network = networkAccessor.GetNetwork(networkId);
                        if (network != null)
                        {
                            if (network.admins.Contains(admin))
                            {
                                //User is already an admin of this network
                                return "admin exists";
                            }
                            else
                            {
                                bool added = networkAccessor.AddAdmin(networkId, admin.id);
                                return "success";
                            }
                        }
                        else
                        {
                            //Network not found in database
                            return "network not found";
                        }
                    }
                    else
                    {
                        Network network = networkAccessor.GetNetwork(networkId);
                        if (network != null)
                        {
                            CommunicationManager communicationManager = new CommunicationManager();
                            if (network.networkIdentifier == null)
                            {
                                string identifier = SetNetworkIdentifier(network);
                                communicationManager.SendRegisterNetworkAdminInvite(adminEmail, identifier);
                            }
                            else
                            {
                                communicationManager.SendRegisterNetworkAdminInvite(adminEmail, network.networkIdentifier);
                            }
                            return "success";
                        }
                        else
                        {
                            return "network not found";
                        }
                    }
                }
                else
                {
                    //need the email
                    return "error";
                }
            }
            catch (Exception ex)
            {
                logAccessor.CreateLog(DateTime.Now, "Network Manager - AddNetworkAdmin", ex.StackTrace);
                return "error";
            }
        }