Beispiel #1
0
        public static bool addScoutToMeeting(int meetingID, int scoutID)
        {
            bool scoutAdded = true;

            using (var ctx = new SALAHContext())
            {
                meeting meetingQuery = new meeting();
                try
                {
                    bool scoutAlreadyAdded = false;

                    meetingQuery = ctx.Meetings.FirstOrDefault(m => m.meetingID == meetingID);
                    if (meetingQuery.scoutsThatAttended != null)
                    {
                        string[] scoutsThatAttended = meetingQuery.scoutsThatAttended.Split(',');

                        foreach (string s in scoutsThatAttended)
                        {
                            if (s == scoutID.ToString())
                            {
                                scoutAlreadyAdded = true;
                            }
                        }

                        if (scoutAlreadyAdded == false)
                        {
                            meetingQuery.scoutsThatAttended += scoutID + ",";
                            meetingQuery.attendance++;
                            ctx.SaveChanges();
                            ctx.Dispose();
                            scoutAdded = true;
                        }
                        return(scoutAdded);
                    }
                    else if (meetingQuery.scoutsThatAttended == null)
                    {
                        meetingQuery.scoutsThatAttended += scoutID + ",";
                        meetingQuery.attendance++;
                        ctx.SaveChanges();
                        ctx.Dispose();
                        scoutAdded = true;
                    }
                }
                catch
                {
                    scoutAdded = false;
                    return(scoutAdded);
                }
            }
            return(scoutAdded);
        }
        public static bool DeleteLocation(location location, group group)
        {
            bool     locationDeleted = false;
            location locationQuery   = new location();
            int      locationIDint   = location.locationID;

            using (var ctx = new SALAHContext())
            {
                try
                {
                    locationQuery = ctx.Locations.FirstOrDefault(l => l.locationID == locationIDint);
                    ctx.Locations.Remove(locationQuery);
                    ctx.SaveChanges();
                    ctx.Dispose();
                    if (group.RemoveLocationFromGroup(location))
                    {
                        locationDeleted = true;
                    }
                }
                catch
                {
                    locationDeleted = false;
                }
            }
            return(locationDeleted);
        }
Beispiel #3
0
        public static bool RemoveLocationFromGroup(location location)
        {
            bool   locationRemoved  = true;
            group  group            = new group();
            string locationIDString = location.locationID.ToString();

            try
            {
                using (var ctx = new SALAHContext())
                {
                    var result = ctx.Groups.SingleOrDefault(g => g.location_ID == locationIDString);
                    if (result != null)
                    {
                        group = result;
                    }
                    group.location_ID = null;

                    ctx.SaveChanges();
                    ctx.Dispose();
                    locationRemoved = true;
                    return(locationRemoved);
                }
            }
            catch
            {
                locationRemoved = false;
                return(locationRemoved);
            }
        }
Beispiel #4
0
        public static bool changeLocationOfGroup(int groupID, int newLocationID)
        {
            bool   locationAdded    = false;
            string locationIDString = newLocationID.ToString();

            try
            {
                using (var ctx = new SALAHContext())
                {
                    group groupQuery = ctx.Groups.FirstOrDefault(g => g.groupID == groupID);


                    groupQuery.location_ID = locationIDString;

                    ctx.SaveChanges();

                    locationAdded = true;
                }
            }
            catch
            {
                locationAdded = false;
            }
            return(locationAdded);
        }
Beispiel #5
0
        public static bool deleteGroup(int groupID, user currentUser)
        {
            bool  groupDeleted = false;
            group groupQuery   = new group();

            using (var ctx = new SALAHContext())
            {
                try
                {
                    groupQuery = ctx.Groups.FirstOrDefault(m => m.groupID == groupID);
                    ctx.Groups.Remove(groupQuery);
                    ctx.SaveChanges();
                    ctx.Dispose();
                    if (user.groupRemovedFromUser(groupID, currentUser))
                    {
                        groupDeleted = true;
                    }
                }
                catch
                {
                    groupDeleted = false;
                }
            }
            return(groupDeleted);
        }
Beispiel #6
0
        public static bool addNewMeeting(meeting meeting, group group)
        {
            bool meetingAdded        = false;
            bool meetingAddedToGroup = false;

            try
            {
                using (var ctx = new SALAHContext())
                {
                    ctx.Meetings.Add(meeting);
                    ctx.SaveChanges();
                }
                meetingAddedToGroup = group.addMeetingToGroup(group.groupID, meeting.meetingID);
                if (meetingAddedToGroup)
                {
                    meetingAdded = true;
                }
                return(meetingAdded);
            }
            catch
            {
                meetingAdded = false;
                return(meetingAdded);
            }
        }
        public static bool ChangeLocationOfResource(int resourceId, int oldLocationId, int newLocationId, bool moveResource)
        {
            bool     resourceMoved    = true;
            string   resourceIdString = resourceId.ToString();
            location oldLocation      = new location();
            location newLocation      = new location();
            resource resource         = new resource();

            try
            {
                if (moveResource == true)
                {
                    using (var ctx = new SALAHContext())
                    {
                        oldLocation = ctx.Locations.FirstOrDefault(l => l.locationID == oldLocationId);
                        resource    = ctx.Resources.FirstOrDefault(r => r.resourceID == resourceId);
                        location.RemoveResourceFromLocation(oldLocation, resource);
                        location.addResourceToLocation(newLocationId, resourceId);
                        resourceMoved = true;
                        ctx.SaveChanges();
                        ctx.Dispose();
                        return(resourceMoved);
                    }
                }
                return(resourceMoved);
            }
            catch
            {
                resourceMoved = false;
                return(resourceMoved);
            }
        }
        public static bool changeLocationsGroup(location location, group oldGroup, group newGroup, bool moveGroup)
        {
            bool   locationMoved    = true;
            string locationIDString = location.locationID.ToString();

            try
            {
                if (moveGroup == true)
                {
                    using (var ctx = new SALAHContext())
                    {
                        oldGroup             = ctx.Groups.FirstOrDefault(g => g.location_ID == locationIDString);
                        oldGroup.location_ID = null;
                        newGroup             = ctx.Groups.FirstOrDefault(g => g.groupID == newGroup.groupID);
                        newGroup.location_ID = location.locationID.ToString();
                        locationMoved        = true;
                        ctx.SaveChanges();
                        ctx.Dispose();
                        return(locationMoved);
                    }
                }
                return(locationMoved);
            }
            catch
            {
                locationMoved = false;
                return(locationMoved);
            }
        }
Beispiel #9
0
        /// <summary>
        /// add a new group to the database and then to the user
        /// </summary>
        /// <param name="newGroup">the new group to be added</param>
        /// <param name="user">the user the group is to be added to</param>
        /// <returns></returns>
        public static bool AddNewGroup(group newGroup, user user)
        {
            bool groupAdded       = false;
            bool groupAddedToUser = false;

            try
            {
                using (var ctx = new SALAHContext())
                {
                    ctx.Groups.Add(newGroup);
                    ctx.SaveChanges();
                }

                groupAddedToUser = user.addGroupToUser(user, newGroup.groupID);
                if (groupAddedToUser)
                {
                    groupAdded = true;
                }
                return(groupAdded);
            }
            catch
            {
                groupAdded = false;
                return(groupAdded);
            }
        }
        public static bool RemoveResourceFromLocation(location location, resource resourceToRemove)
        {
            bool     resourceRemoved = false;
            location currentLocation;

            string[] resourceIDsArray = location.resourceIDs.Split(',');

            int count = 0;

            foreach (string s in resourceIDsArray)
            {
                if (s != null && s != "")
                {
                    count++;
                }
            }
            string[] resourceIDs = new string[count];
            int      i           = 0;

            foreach (string s in resourceIDsArray)
            {
                if (s != null && s != "")
                {
                    resourceIDs[i] = s;
                    i++;
                }
            }

            string locationIDString = location.locationID.ToString();

            try
            {
                using (var ctx = new SALAHContext())
                {
                    currentLocation             = ctx.Locations.FirstOrDefault(l => l.locationID == location.locationID);
                    currentLocation.resourceIDs = "";
                    foreach (string s in resourceIDs)
                    {
                        if (s != resourceToRemove.resourceID.ToString())
                        {
                            currentLocation.resourceIDs += s + ",";
                        }
                    }

                    ctx.SaveChanges();
                    resourceRemoved = true;
                    ctx.Dispose();
                    return(resourceRemoved);
                }
            }
            catch
            {
                resourceRemoved = false;
                return(resourceRemoved);
            }
        }
Beispiel #11
0
        public static bool RemoveMeetingFromGroup(group group, meeting meeting)
        {
            bool meetingRemovedFromGroup = false;

            using (var ctx = new SALAHContext())
            {
                try
                {
                    var result = ctx.Groups.SingleOrDefault(g => g.group_name == group.group_name);
                    if (result != null)
                    {
                        group = result;
                    }

                    string[] oldGroupMeetings = group.meetingIDs.Split(',');

                    for (int i = 0; i < oldGroupMeetings.Length; i++)
                    {
                        if (oldGroupMeetings[i] == meeting.meetingID.ToString())
                        {
                            var result1 = ctx.Groups.SingleOrDefault(g => g.group_name == group.group_name);
                            if (result1 != null)
                            {
                                result1.meetingIDs = "";

                                for (int j = 0; j < oldGroupMeetings.Length - 1; j++)
                                {
                                    if (i != j)
                                    {
                                        result1.meetingIDs += oldGroupMeetings[j] + ",";
                                    }
                                }
                            }
                        }
                    }
                    meetingRemovedFromGroup = true;
                    ctx.SaveChanges();
                    ctx.Dispose();
                }
                catch
                {
                    meetingRemovedFromGroup = false;
                }
            }
            return(meetingRemovedFromGroup);
        }
Beispiel #12
0
        private void editGroupBtn_Click(object sender, EventArgs e)
        {
            var confirmResult = MessageBox.Show("Are you sure you want to save your changes?",
                                                "Save changes",
                                                MessageBoxButtons.YesNo);

            if (confirmResult == DialogResult.Yes)
            {
                int groupId = groupToBeEdited.groupID;

                using (var ctx = new SALAHContext())
                {
                    var result = ctx.Groups.SingleOrDefault(g => g.groupID == groupId);
                    if (result != null)
                    {
                        result.group_name = groupNameTxtbx.Text;
                        bool locationExists = location.checkLocationExists(meetingPlaceTxtBx.Text);
                        if (locationExists == true)
                        {
                            location location = location.getLocationWName(meetingPlaceTxtBx.Text);
                            group.changeLocationOfGroup(groupId, location.locationID);
                            string locationIDString = location.locationID.ToString();
                            result.location_ID = locationIDString;
                        }
                        else
                        {
                            location location = new location(meetingPlaceTxtBx.Text);
                            location.addLocation(location);
                            group.changeLocationOfGroup(groupId, location.locationID);
                        }

                        result.group_type = ageGroupCBox.SelectedItem.ToString();
                    }

                    ctx.SaveChanges();
                    ctx.Dispose();
                }

                main_screen open_screen = new main_screen(currentUser);
                this.Close();
                open_screen.Show();
            }
            return;
        }
Beispiel #13
0
        /// <summary>
        /// Adds a new user to the user database
        /// </summary>
        /// <param name="user">User object to be added </param>
        /// <returns></returns>
        public static bool AddNewUser(user user)
        {
            bool userAdded = false;

            try
            {
                using (var ctx = new SALAHContext())
                {
                    ctx.Users.Add(user);
                    ctx.SaveChanges();
                }
                userAdded = true;
                return(userAdded);
            }
            catch
            {
                userAdded = false;
                return(userAdded);
            }
        }
        public static bool addNewResource(resource resource)
        {
            bool resourceAdded = false;

            try
            {
                using (var ctx = new SALAHContext())
                {
                    ctx.Resources.Add(resource);
                    ctx.SaveChanges();
                }
                resourceAdded = true;
                return(resourceAdded);
            }
            catch
            {
                resourceAdded = false;
                return(resourceAdded);
            }
        }
        public static bool addLocation(location location)
        {
            bool locationAdded = false;

            try
            {
                using (var ctx = new SALAHContext())
                {
                    ctx.Locations.Add(location);
                    ctx.SaveChanges();
                    locationAdded = true;
                    return(locationAdded);
                }
            }
            catch
            {
                locationAdded = false;
                return(locationAdded);
            }
        }
Beispiel #16
0
        public static bool addNewScout(scout scout)
        {
            bool scoutAdded = false;

            try
            {
                using (var ctx = new SALAHContext())
                {
                    ctx.Scouts.Add(scout);
                    ctx.SaveChanges();
                }
                scoutAdded = true;
                return(scoutAdded);
            }
            catch
            {
                scoutAdded = false;
                return(scoutAdded);
            }
        }
Beispiel #17
0
        /// <summary>
        /// change which group the scout belongs to
        /// </summary>
        /// <param name="oldGroup">group the scout currently belongs to</param>
        /// <param name="newGroup">group the scout is going to belong to</param>
        /// <param name="scout">the scout to be moved</param>
        /// <param name="moveGroup">if the scout needs to be moved</param>
        public static void changeGroupMeeting(group oldGroup, group newGroup, meeting meeting, bool moveGroup)
        {
            if (moveGroup == true)
            {
                using (var ctx = new SALAHContext())
                {
                    var result = ctx.Groups.SingleOrDefault(g => g.groupID == newGroup.groupID);


                    if (result != null)
                    {
                        newGroup = result;
                    }

                    string[] oldGroupMeetings = oldGroup.meetingIDs.Split(',');

                    for (int i = 0; i < oldGroupMeetings.Length; i++)
                    {
                        if (oldGroupMeetings[i] == meeting.meetingID.ToString())
                        {
                            var result1 = ctx.Groups.SingleOrDefault(g => g.groupID == oldGroup.groupID);
                            if (result1 != null)
                            {
                                result1.meetingIDs = "";

                                for (int j = 0; j < oldGroupMeetings.Length - 1; j++)
                                {
                                    if (i != j)
                                    {
                                        result1.meetingIDs += oldGroupMeetings[j] + ",";
                                    }
                                }
                            }
                        }
                    }
                    group.addMeetingToGroup(newGroup.groupID, meeting.meetingID);
                    ctx.SaveChanges();
                    ctx.Dispose();
                }
            }
        }
Beispiel #18
0
        /// <summary>
        /// adds a groupID into the users groupIDs string
        /// </summary>
        /// <param name="user">the user the group is being added to</param>
        /// <param name="groupID">the groupID of the group being added to the user</param>
        /// <returns></returns>
        public static bool addGroupToUser(user user, int groupID)
        {
            bool   groupAddedToUser = false;
            string groupIDString    = groupID.ToString();

            using (var ctx = new SALAHContext())
            {
                try
                {
                    user userQuery = ctx.Users.FirstOrDefault(m => m.ID == user.ID);
                    userQuery.groupIDs = userQuery.groupIDs + groupIDString + ",";
                    ctx.SaveChanges();
                    groupAddedToUser = true;
                }
                catch
                {
                    groupAddedToUser = false;
                }
            }
            return(groupAddedToUser);
        }
        public static bool addResourceToLocation(int locationId, int resourceId)
        {
            bool resourceAdded = false;

            try
            {
                using (var ctx = new SALAHContext())
                {
                    location locationQuery = ctx.Locations.FirstOrDefault(l => l.locationID == locationId);
                    if (locationQuery.resourceIDs != null)
                    {
                        string[] locationsResources = locationQuery.resourceIDs.Split(',');

                        locationQuery.resourceIDs = "";

                        foreach (string s in locationsResources)
                        {
                            if (s != "" && s != null)
                            {
                                locationQuery.resourceIDs = locationQuery.resourceIDs + s + ",";
                            }
                        }
                        locationQuery.resourceIDs += resourceId + ",";
                    }
                    if (locationQuery.resourceIDs == null)
                    {
                        locationQuery.resourceIDs = resourceId + ",";
                    }

                    ctx.SaveChanges();
                    resourceAdded = true;
                    return(resourceAdded);
                }
            }
            catch
            {
                resourceAdded = false;
                return(resourceAdded);
            }
        }
        public static bool DeleteResource(int resourceID)
        {
            bool     resourceDeleted = false;
            resource resourceQuery   = new resource();

            using (var ctx = new SALAHContext())
            {
                try
                {
                    resourceQuery = ctx.Resources.FirstOrDefault(r => r.resourceID == resourceID);
                    ctx.Resources.Remove(resourceQuery);
                    ctx.SaveChanges();
                    ctx.Dispose();
                    resourceDeleted = true;
                }
                catch
                {
                    resourceDeleted = false;
                }
            }
            return(resourceDeleted);
        }
Beispiel #21
0
        public static bool deleteMeeting(int meetingID)
        {
            bool    meetingDeleted = false;
            meeting meetingQuery   = new meeting();

            using (var ctx = new SALAHContext())
            {
                try
                {
                    meetingQuery = ctx.Meetings.FirstOrDefault(m => m.meetingID == meetingID);
                    ctx.Meetings.Remove(meetingQuery);
                    ctx.SaveChanges();
                    ctx.Dispose();
                    meetingDeleted = true;
                }
                catch
                {
                    meetingDeleted = false;
                }
            }
            return(meetingDeleted);
        }
Beispiel #22
0
        public static bool addMeetingToGroup(int groupID, int newMeetingID)
        {
            bool meetingAdded = false;

            try
            {
                using (var ctx = new SALAHContext())
                {
                    group groupQuery = ctx.Groups.FirstOrDefault(g => g.groupID == groupID);
                    if (groupQuery.meetingIDs != null)
                    {
                        string[] groupsMeetings = groupQuery.meetingIDs.Split(',');

                        groupQuery.meetingIDs = "";

                        foreach (string s in groupsMeetings)
                        {
                            if (s != "" && s != null)
                            {
                                groupQuery.meetingIDs = groupQuery.meetingIDs + s + ",";
                            }
                        }
                        groupQuery.meetingIDs += newMeetingID + ",";
                    }
                    if (groupQuery.meetingIDs == null)
                    {
                        groupQuery.meetingIDs = newMeetingID + ",";
                    }

                    ctx.SaveChanges();
                    meetingAdded = true;
                }
            }
            catch
            {
                meetingAdded = false;
            }
            return(meetingAdded);
        }
Beispiel #23
0
        /// <summary>
        /// Add a scout to a group
        /// </summary>
        /// <param name="groupName">name of the group</param>
        /// <param name="newScoutID">id of the new scout</param>
        /// <returns></returns>
        public static bool addScoutToGroup(int groupID, int newScoutID)
        {
            bool scoutAdded = false;

            try
            {
                using (var ctx = new SALAHContext())
                {
                    group groupQuery = ctx.Groups.FirstOrDefault(g => g.groupID == groupID);
                    if (groupQuery.scoutID != null)
                    {
                        string[] groupsScouts = groupQuery.scoutID.Split(',');

                        groupQuery.scoutID = "";

                        foreach (string s in groupsScouts)
                        {
                            if (s != "" && s != null)
                            {
                                groupQuery.scoutID = groupQuery.scoutID + s + ",";
                            }
                        }
                        groupQuery.scoutID += newScoutID + ",";
                    }
                    if (groupQuery.scoutID == null)
                    {
                        groupQuery.scoutID = newScoutID + ",";
                    }

                    ctx.SaveChanges();
                    scoutAdded = true;
                }
            }
            catch
            {
                scoutAdded = false;
            }
            return(scoutAdded);
        }
Beispiel #24
0
        public static bool deleteGroup(string groupname)
        {
            bool  groupDeleted = false;
            group groupQuery   = new group();

            using (var ctx = new SALAHContext())
            {
                try
                {
                    groupQuery = ctx.Groups.FirstOrDefault(m => m.group_name == groupname);
                    ctx.Groups.Remove(groupQuery);
                    ctx.SaveChanges();
                    ctx.Dispose();
                    groupDeleted = true;
                }
                catch
                {
                    groupDeleted = false;
                }
            }
            return(groupDeleted);
        }
Beispiel #25
0
        private void saveChangesBtn_Click(object sender, EventArgs e)
        {
            var confirmResult = MessageBox.Show("Are you sure you want to save your changes?",
                                                "Save changes",
                                                MessageBoxButtons.YesNo);
            if (confirmResult == DialogResult.Yes)

            {

                if (newGroup.group_name == currentGroup.group_name)
                    moveGroup = false;

                group.changeGroupMeeting(currentGroup, newGroup, currentMeeting, moveGroup);

                int meetingId = currentMeeting.meetingID;

                using (var ctx = new SALAHContext())
                {
                    var result = ctx.Meetings.SingleOrDefault(m => m.meetingID == meetingId);
                    if (result != null)
                    {
                        result.meetingTitle = meetingTitleTxtBx.Text;
                        result.meetingDesc = meetingDescTxtBx.Text;
                        result.Location = meetingPlaceTxtBx.Text;
                        result.DateTime = meetingDatePicker.Value.ToString();
                    }

                    ctx.SaveChanges();
                    ctx.Dispose();
                }

                main_screen open_screen = new main_screen(currentUser);
                this.Close();
                open_screen.Show();

            }
            return;
        }
Beispiel #26
0
        public static bool deleteScout(int scoutID)
        {
            bool  scoutDeleted = false;
            scout scoutQuery   = new scout();

            using (var ctx = new SALAHContext())
            {
                try
                {
                    scoutQuery = ctx.Scouts.FirstOrDefault(m => m.scoutID == scoutID);
                    ctx.Scouts.Remove(scoutQuery);
                    ctx.SaveChanges();
                    ctx.Dispose();
                    //if (group.RemoveUserFromGroup())
                    scoutDeleted = true;
                }
                catch
                {
                    scoutDeleted = false;
                }
            }
            return(scoutDeleted);
        }
        private void saveBtn_Click(object sender, EventArgs e)
        {
            var confirmResult = MessageBox.Show("Are you sure you want to save your changes to this resource?",
                                                "Save Changes",
                                                MessageBoxButtons.YesNo);

            if (confirmResult == DialogResult.Yes)
            {
                if (newLocation.locationID == currentLocation.locationID)
                {
                    moveLocation = false;
                }

                resource.ChangeLocationOfResource(currentResource.resourceID, currentLocation.locationID, newLocation.locationID, moveLocation);

                int resourceId = currentResource.resourceID;

                using (var ctx = new SALAHContext())
                {
                    var result = ctx.Resources.SingleOrDefault(r => r.resourceID == resourceId);
                    if (result != null)
                    {
                        result.name     = resourceNameTxtBx.Text;
                        result.notes    = resourceNotesTxtBx.Text;
                        result.quantity = int.Parse(quantityUpDown.Text);
                    }

                    ctx.SaveChanges();
                    ctx.Dispose();
                }

                main_screen open_screen = new main_screen(currentUser);
                this.Close();
                open_screen.Show();
            }
        }
        private void saveBtn_Click(object sender, EventArgs e)
        {
            var confirmResult = MessageBox.Show("Are you sure you want to save your changes?",
                                                "Save changes",
                                                MessageBoxButtons.YesNo);

            if (confirmResult == DialogResult.Yes)
            {
                if (newGroup.group_name == currentGroup.group_name || newGroup.group_name == null)
                {
                    moveGroup = false;
                }

                location.changeLocationsGroup(currentLocation, currentGroup, newGroup, moveGroup);

                int locationId = currentLocation.locationID;

                using (var ctx = new SALAHContext())
                {
                    var result = ctx.Locations.SingleOrDefault(l => l.locationID == locationId);
                    if (result != null)
                    {
                        result.locationName = locationNameTxtBx.Text;
                        result.venueNotes   = venueNotesTxtBx.Text;
                        result.Address      = CreateAddress();
                    }

                    ctx.SaveChanges();
                    ctx.Dispose();
                }

                main_screen open_screen = new main_screen(currentUser);
                this.Close();
                open_screen.Show();
            }
        }