Giter VIP home page Giter VIP logo

moore_csci2270_finalproject's Introduction

Moore_CSCI2270_FinalProject

Project Summary: This project will create a social messaging system where the user will log into a profile and from there either post messages to a public message board, send messages to specific profiles, delete their posts to the public message board, or delete a private incoming message. When first running the program, the user will type in their user name. This will create an account that they will use until they close the program or select to sign into another profile. The messages created by the user will be stored within structs that contain information such as the creator and recipient of the message. When the user selects to view all of the messages accessable to them, the messages will appear in oldest first order of private messages and then the same order for public messages. This means that the most recent message sent to them privately will be displayed at the bottom and then after all private messages have been displayed the public messages will be displayed in the same fashion.

How to Run: All code for this project is in the MessageSender folder assoiated with this repository. After downloading this repo, all the necessary files are in the Message Sender folder. To run, navigate a terminal window to the directory containing the files named MessageSender.cpp, SenderFunctions.cpp and SenderFunctions.h. Then run the command "make". Then run the program by using the command "./MsgSend".
When the program is run it begins by reading in from a file named "Messages.txt". It parses the data in the file and sets up the program accordingly. If the file is blank it will still run, but a file by that name does need to be in the directory. First the user is prompted to input a username. The user inputs anything that they wish as long as they do not use the * or % characters. The usernames that are already incorpoorated into the program are Nick, Scott, and admin. Choosing any of these usernames will allow for their pre-constructed conversations to be visible. While logging in, any username not in the system will automatically generate a new user. They will not be able to see private conversations that were pre-constructed. After logging in, the user may select the options in the main menu with the number keys coresponding to the number beside that choice in the menu. After selecting an appropriate command from the main menu, the user will be prompted with printed statements as to what to do to complete the selected function.

Dependencies: No special dependencies.

System Requirements: Computer that can run and compile a C++ program. No special dependencies.

Group Members: This project is created by Nicholas Moore and Scott Schubert

Contributors:

Open issues/bugs: Enhancement request: A password system that requires a user to enter a password when logging in.
Bugs: When deleting posts, it only deletes the content of the struct and doesn't remove it from the linked list oddly. Therefore, when logged in as admin these post print out blank. Current fix is that upon saving to text file at completion of program there's a check which doesn't write it to file. Therefore fixes problem only between run times.

moore_csci2270_finalproject's People

Contributors

nimo8741 avatar schubydooo avatar

Watchers

 avatar  avatar

Forkers

oliverehrhardt

moore_csci2270_finalproject's Issues

Seg Fault after deleting message at end

Message deletion seems to work fine for all messages except for the last one in the list. Deleting the message from the bottom of the 'private' list causes a seg fault.

To replicate:
Use the default/unchanged messages file.
Log in as admin.
Print all messages. The message at the 'end' of the private list should be number 4.
Delete message number 4.
Try to print all messages again. The program will crash with a segmentation fault.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.