Exemplo n.º 1
0
        public JsonModels.Network GetNetworkJson(Network network)
        {
            try
            {
                if (network != null)
                {
                    JsonModels.Network networkJson = new JsonModels.Network();
                    networkJson.id = network.id;
                    networkJson.coverPicture = network.coverPicture;
                    networkJson.description = network.description;
                    networkJson.name = network.name;
                    networkJson.privacy = network.privacy;
                    networkJson.profileURL = network.profileURL;
                    if (network.GetType().Name.Contains("Network_TopNetwork"))
                    {
                        Network_TopNetwork topNetwork = networkAccessor.GetTopNetwork(network.id);
                        if (topNetwork.subNetworks.Count > 0)
                        {
                            List<JsonModels.NetworkShell> subNetShells = new List<JsonModels.NetworkShell>();
                            foreach (Network_SubNetwork subNetwork in topNetwork.subNetworks)
                            {
                                if (subNetwork != null)
                                {
                                    JsonModels.NetworkShell netShell = new JsonModels.NetworkShell();
                                    netShell.id = subNetwork.id;
                                    netShell.name = subNetwork.name;
                                    netShell.profileURL = subNetwork.profileURL;
                                    netShell.coverPicture = subNetwork.coverPicture;
                                    netShell.privacy = subNetwork.privacy;
                                    subNetShells.Add(netShell);
                                }
                            }
                            networkJson.subNetworks = subNetShells;
                            networkJson.parentNetwork = null;
                        }
                        else
                        {
                            networkJson.subNetworks = null;
                        }
                    }
                    else if (network.GetType().Name.Contains("Network_SubNetwork"))
                    {
                        Network_SubNetwork subNetwork = (Network_SubNetwork)network;
                        if (subNetwork.groups.Count > 0)
                        {
                            List<JsonModels.NetworkShell> groupShells = new List<JsonModels.NetworkShell>();
                            foreach (Network_Group group in subNetwork.groups)
                            {
                                if (group != null)
                                {
                                    JsonModels.NetworkShell gShell = new JsonModels.NetworkShell();
                                    gShell.id = group.id;
                                    gShell.name = group.name;
                                    gShell.profileURL = group.profileURL;
                                    gShell.coverPicture = group.coverPicture;
                                    gShell.privacy = group.privacy;
                                    groupShells.Add(gShell);
                                }
                            }
                            networkJson.subNetworks = groupShells;

                            JsonModels.NetworkShell parentNetworkShell = new JsonModels.NetworkShell();
                            Network_TopNetwork topNet = subNetwork.Network_TopNetwork;

                            parentNetworkShell.id = topNet.id;
                            parentNetworkShell.name = topNet.name;
                            parentNetworkShell.profileURL = topNet.profileURL;
                            parentNetworkShell.coverPicture = topNet.coverPicture;
                            parentNetworkShell.privacy = topNet.privacy;
                            networkJson.parentNetwork = parentNetworkShell;
                        }
                        else
                        {
                            networkJson.subNetworks = null;

                            JsonModels.NetworkShell parentNetworkShell = new JsonModels.NetworkShell();
                            Network_TopNetwork topNet = subNetwork.Network_TopNetwork;

                            parentNetworkShell.id = topNet.id;
                            parentNetworkShell.name = topNet.name;
                            parentNetworkShell.profileURL = topNet.profileURL;
                            parentNetworkShell.coverPicture = topNet.coverPicture;
                            parentNetworkShell.privacy = topNet.privacy;
                            networkJson.parentNetwork = parentNetworkShell;
                        }

                    }
                    else if (network.GetType().Name.Contains("Network_Group"))
                    {
                        Network_Group networkGroup = (Network_Group)network;
                        JsonModels.NetworkShell parentNetworkShell = new JsonModels.NetworkShell();
                        Network_SubNetwork subNet = networkGroup.Network_SubNetwork;
                        parentNetworkShell.id = subNet.id;
                        parentNetworkShell.name = subNet.name;
                        parentNetworkShell.profileURL = subNet.profileURL;
                        parentNetworkShell.coverPicture = subNet.coverPicture;
                        parentNetworkShell.privacy = subNet.privacy;
                        networkJson.parentNetwork = parentNetworkShell;
                    }

                    if (network.admins.Count > 0)
                    {
                        List<JsonModels.NetworkUserShell> adminShells = new List<JsonModels.NetworkUserShell>();
                        foreach (User admin in network.admins)
                        {
                            if (admin != null)
                            {
                                JsonModels.NetworkUserShell adminJson = new JsonModels.NetworkUserShell();
                                adminJson.userId = admin.id;
                                adminJson.firstName = admin.firstName;
                                adminJson.lastName = admin.lastName;
                                adminJson.profileURL = admin.profileURL;
                                adminJson.pictureLocation = admin.networkPictureThumbnail;
                                if (admin.isPublic == 1)
                                {
                                    adminJson.visibility = "visible";
                                }
                                else
                                {
                                    adminJson.visibility = "hidden";
                                }
                                adminShells.Add(adminJson);
                            }
                        }
                        networkJson.admins = adminShells;
                    }
                    return networkJson;
                }
                else
                {
                    return null;
                }
            }
            catch (Exception ex)
            {
                logAccessor.CreateLog(DateTime.Now, "Network Manager - GetNetworkJson", ex.StackTrace);
                return null;
            }
        }
Exemplo n.º 2
0
 public JsonModels.NetworkUsers GetNetworkUsers(int networkId)
 {
     try
     {
         Network network = networkAccessor.GetNetwork(networkId);
         if (network != null)
         {
             JsonModels.NetworkUsers networkUsersJson = new JsonModels.NetworkUsers();
             networkUsersJson.users = new List<JsonModels.NetworkUserShell>();
             foreach (User u in network.networkUsers)
             {
                 if (u != null)
                 {
                     JsonModels.NetworkUserShell userShell = new JsonModels.NetworkUserShell();
                     userShell.userId = u.id;
                     userShell.firstName = u.firstName;
                     userShell.lastName = u.lastName;
                     userShell.profileURL = u.profileURL;
                     userShell.pictureLocation = u.networkPictureThumbnail;
                     if (u.isPublic == 1)
                     {
                         userShell.visibility = "visible";
                     }
                     else
                     {
                         userShell.visibility = "hidden";
                     }
                     networkUsersJson.users.Add(userShell);
                 }
             }
             return networkUsersJson;
         }
         else
         {
             //couldnt find network
             return null;
         }
     }
     catch (Exception ex)
     {
         logAccessor.CreateLog(DateTime.Now, "Network Manager - GetNetworkUsers", ex.StackTrace);
         return null;
     }
 }
Exemplo n.º 3
0
        public string AddNetworkAdmin(int networkId, string adminEmail, string token)
        {
            if (Request.RequestType.Equals("OPTIONS", StringComparison.InvariantCultureIgnoreCase))  //This is a preflight request
            {
                return null;
            }
            try
            {
                int userId = authenticationEngine.authenticate(token);
                if (userId < 0)
                {
                    return AddErrorHeader("You are not authenticated, please log in!", 2);
                }

                if (networkManager.IsNetworkAdmin(networkId, userId))
                {
                    string added = networkManager.AddNetworkAdmin(networkId, adminEmail);
                    if (added == "success")
                    {
                        User admin = userManager.GetUserByEmail(adminEmail);
                        if (admin != null)
                        {
                            JsonModels.NetworkUserShell uShell = new JsonModels.NetworkUserShell();
                            uShell.firstName = admin.firstName;
                            uShell.profileURL = admin.profileURL;
                            uShell.lastName = admin.lastName;
                            uShell.userId = admin.id;
                            if (admin.isPublic == 1)
                            {
                                uShell.visibility = "visible";
                            }
                            else
                            {
                                uShell.visibility = "hidden";
                            }
                            return AddSuccessHeader(Serialize(uShell));
                        }
                        else
                        {
                            return AddSuccessHeader("An email has been sent to "+adminEmail+" with instructions on creating a Vestn Account",true);
                        }
                    }
                    else if(added == "admin not found")
                    {
                        return AddErrorHeader("The administrator you attempted to add does not have a Vestn account. Please have your administrator create an account, then try adding them again", 1);
                    }
                    else if (added == "admin exists")
                    {
                        return AddErrorHeader("This user is already an administrator", 1);
                    }
                    else
                    {
                        return AddErrorHeader("An error occurred while adding this administrator" , 1);
                    }
                    return AddErrorHeader("An error occurred while adding this administrator", 1);
                }
                else
                {
                    return AddErrorHeader("User must be an admin to add network administrators", 3);
                }
            }
            catch (Exception ex)
            {
                logAccessor.CreateLog(DateTime.Now, "NetworkController - AddNetworkAdmin", ex.StackTrace);
                return AddErrorHeader("something went wrong while adding this network administrator", 1);
            }
        }