Academia.eduAcademia.edu

Online auditorium booking system project report.

https://doi.org/10.13140/RG.2.2.20225.47202

An Auditorium booking management system is a web-based application system that allows clients to book a facility in an auditorium. The system provides a platform to check for days that each facility in the auditorium is available, make reservations, make payments and finally book for the selected date and time. Users can use this program directly on their web browsers and no need to install it. An Auditorium is a large building that is designed to hold a convention, where individuals and groups gather to promote and share common interests. Convention centers typically offer sufficient floor area to accommodate several thousand attendees. Very large venues, suitable for major trade shows, are sometimes known as exhibition halls. Auditoriums typically have at least one auditorium and may also contain concert halls, lecture halls, meeting rooms, and conference rooms. Currently, there is a lengthy process involved in securing a place in an Auditorium, which takes a lot of time and creates so many inconveniences to clients. To solve the above problem, we decided to develop a system that will give people who are interested in booking a particular, a platform where they can just be in their comfort zones and check for days vacant for booking, make reservations, make payment and successfully book a space in the event center. The order has four (4) steps, after accessing the web page, a new client has to sign up whereas an old client can just log in with their previous credentials. After logging in, the next step is to check the availability of facilities, next is to select date and time available for a required event.

AN INTERNSHIP REPORT ON ONLINE AUDITORIUM BOOKING SYSTEM PROJECT BY KAMAL ACHARYA (Tribhuvan University) Date: 2022/04/09 1|P ag e CHAPTER ONE GENERAL INTRODUCTION 1.1 INTRODUCTION An Auditorium booking management system is a web-based application system that allows clients to book a facility in an auditorium. The system provides a platform to check for days that each facility in the auditorium is available, make reservations, make payments and finally book for the selected date and time. Users can use this program directly on their web browsers and no need to install it. An Auditorium is a large building that is designed to hold a convention, where individuals and groups gather to promote and share common interests. Convention centers typically offer sufficient floor area to accommodate several thousand attendees. Very large venues, suitable for major trade shows, are sometimes known as exhibition halls. Auditoriums typically have at least one auditorium and may also contain concert halls, lecture halls, meeting rooms, and conference rooms. Currently, there is a lengthy process involved in securing a place in an Auditorium, which takes a lot of time and creates so many inconveniences to clients. To solve the above problem, we decided to develop a system that will give people who are interested in booking a particular, a platform where they can just be in their comfort zones and check for days vacant for booking, make reservations, make payment and successfully book a space in the event center. The order has four (4) steps, after accessing the web page, a new client has to sign up whereas an old client can just log in with their previous credentials. After logging in, the next step is to check the availability of facilities, next is to select date and time available for a required event. Clients therefore can make a reservation from there and must proceed to fulfil their necessary financial obligations to successfully book the required space or else their 2|P ag e reservations automatically expirers after 12 hours. After payment is successfully done, an email is sent to the client confirming booking of the selected space. 1.2 Background Information Technology has become the driver or the lifeblood of today’s economy, as such for any society or community to stay relevant and competitive in this information age, they have to employ IT based solutions for daily challenges. (S. A. , 2018) People or organizations who are interested in securing a space in an Event center go through a lengthy and tiring process. For this reason, the authors of this proposal are suggesting an online booking system for an event center. Online booking system for an event center is a web-based application that allows people or organizations who are interested in securing a place in the Event center to acquire every detail they need about the auditorium, check on dates that the facility is available for use and successfully secure the facility required for an event. The system is intended to aid clients to book the center from their own comfort zones. It is for the reason that the authors of this research believe that the development of a specialize Online booking system for an Event center will save time, money and stress involved in moving to and fro to secure a space for an event. 1.3 Problem Statement Booking an event center can be a time consuming and stressful task for clients especially during peak hours. Clients have to rush to the auditorium facility manager to make enquiries about availability of space on specified dates for their events and may still have to go through the stress 3|P ag e of writing a letter, wait for the approval of the manager before any further process such as knowing the cost of the capacity of the facility needed by the clients and the availability of the specified date could be communicated to the client. This current system of securing a space for an event in an Event center actually generates so much inconvenience to clients due to the hectic process involved to successfully book the facility. Besides the time consumed to manually book the facility, it can also be hectic and tiring for clients to move around securing a space for a said program. This can also be avoided with the aid of a web based booking system for the Event Center. 1.4 Scope of the project This project entails developing a well-organised automated system to aid clients secure a space in an Auditorium with ease. The project will be completed before the end of March 2020. Modules of the website will include checking availability of dates and time, booking facilities, making reservations, making e-payments and keeping records for accountability. It will also include the platform of payment, be it through mobile money, VISA, Skrill, and so many other payment options depending on the cost of the facility interested. The system will also contain tabs such as about page which gives a brief statement about the Auditorium and its operations, contact page which gives clients details of the management of the facility in order to reach them in case they need assistance so those extra tabs gives clients a fair knowledge about the auditorium and to reach management respectively. 4|P ag e 1.5 Limitations of the study  Clients cannot be at their comfort zones and book a space.  Records are difficult to keep and retrieve which makes accountability difficult. 1.6 OBJECTIVE The objectives are divided into general objectives and specific objectives. 1.6.1  General objectives The main aim will be to create Booking Management System for an Auditorium. 1.6.2 Specific objectives  To build an automated system that will keep records of the facility bookings for future references, making of accounts, and auditing.  To design an electronic booking solution that will save time, money and create relief for clients and administrators.  To increase efficiency and services to the customers through better application of technology in daily operation.  1.7 To develop and implement online booking management system for an Auditorium. Methodology In order to develop an auditorium booking management system that is consistent, it is important to introduce a process model that will be used. A process model guides the order of project 5|P ag e activities and represents the life cycle of a project. The model that will be used is the waterfall model. The waterfall model is a linear, sequential approach to the software development life cycle (SDLC) that is popular in software engineering and product development. The waterfall model emphasizes a logical progression of steps. Similar to the direction water flows over the edge of a cliff, distinct endpoints or goals are set for each phase of development and cannot be revisited after completion. The term was first introduced in a paper published in 1970 by Dr. Winston W. Royce and continues to be used in applications of industrial design. The waterfall methodology is composed of seven non-overlapping stages: 1. Requirements: Potential requirements, deadlines and guidelines for the project are analyzed and placed into a functional specification. This stage handles the defining and planning of the project without mentioning specific processes. 2. Analysis: The system specifications are analyzed to generate product models and business logic that will guide production. This is also when financial and technical resources are audited for feasibility. 3. Design: A design specification document is created to outline technical design requirements such as programming language, hardware, data sources, architecture and services. 4. Coding/Implementation: The source code is developed using the models, logic and requirements designated in the prior stages. Typically, the system is designed in smaller components, or units, before being implemented together. 6|P ag e 5. Testing: This is when quality assurance, unit, system and beta tests take place to report issues that may need to be resolved. This may cause a forced repeat of the coding stage for debugging. If the system passes the tests, the waterfall continues forward. 6. Operation/Deployment: The product or application is deemed fully functional and is deployed to a live environment. 7. Maintenance: Corrective, adaptive and perfective maintenance is carried out indefinitely to improve, update and enhance the final product. This could include releasing patch updates or releasing new versions. 1.8 Organization of the Study The project as supervised by Mr Henry Matey is based on two parts, building of a website system and a report or documentation for the system. The first part is building of the online booking management system which serves as the platform for users to book facilities from their mobile phones or computers. In building the site, the GUI was an important phase. Every customer should find it easy to use therefore so much time was spent on the GUI of the system. The report of the system on the other hand consists of five chapters, with each chapter based on a particular curriculum. Chapter 1 consists of the introduction to the organisation of the study. Chapter 2 is the literature review of the study. Chapter 3, the system analysis and design of the proposed system. Chapter 4 based on the implementation and evaluation of the project. Chapter 5, the summary, conclusion and recommendations of the project. 7|P ag e CHAPTER TWO (2) LITERATURE REVIEW 2.1 INTRODUCTION In our own words, An Auditorium booking system is a web-based application, which allows clients to book or secure a space in an auditorium from their comfort zones for various events. In other to get a clear understanding on this project, we made use of different research material such as books, interviews, online sites, magazines, tutorial videos and many others. This helped us to achieve the targeted objectives of this project. 2.2 GENERAL BACKGROUND OF THE STUDY AREA Taking UPSA auditorium as an example, it was officially inaugurated on May 8, 2019. The auditorium is a 3,550 capacity. The main aim of putting up such a commendable auditorium is to provide space to accommodate students for various activities. The auditorium is also opened for the entire public to book for decent events. The auditorium entails variety of spaces such as the main auditorium, conference rooms, and lobby rooms to host various events at a reasonable cost. This would help to generate revenue for the university. (https:www.upsa.edu.gh, 2019) 2.3 REVIEW OF THE EXISTING SYSTEMS  Seminar Hall Booking Management System Seminar Hall Booking Management System allows users to view availability dates of a particular seminar hall and also the facilities in the hall like capacity, microphones, projector, etc. This provides user-friendly environment while booking the seminar hall and it gives suggestion 8|P ag e regarding the selection of seminar hall based on the capacity and availability. The concern department head can view the list of the request. The acceptance and rejection can be viewed by the user through that login or even by the email id.  Sunshine Auditorium Booking Management System Sunshine Online Booking Management System allows sunshine hospital employee users and external users to book auditorium as per their expected event schedules. Any user internal or external has to raise a request for auditorium booking and it will be approved by admin. A logged in user can check availability date wise and hourly wise too. A user will have the option to provide the hourly availability information too while raising the request. Once approved, an email notification would be sent over confirming the booking.  THE FUNCTIONALITIES OF THE SYSTEM User stories Sunshine Auditorium Management System Login Form √ √ Registration √ √ form Booking form 9|P ag e √ Seminar Hall Management System √ Booking suggestion form Check √ √ availability The figure above depicts all the two systems and they give room for clients and users to register, login, book, and check availability. Seminar hall is improved to suggest booking. None of the systems has the possibility for users to leave a message and also provide images of a particular interested facility. None of the systems also has the function of sending emails to clients to confirm their booking. None of the systems has the possibility for clients to secure a facility more than a day. 2.4 COMPARATIVE STUDY OF REVIEWED SYSTEM The proposed system is developing an auditorium booking management system for UPSA auditorium that allows everyone to make bookings of a facility irrespective of their destination with the aid of an internet. Clients have to just be in their comfort zones, access the site, register or login, check availability, and if possible, book, and make payment to validate booking. Email verifications will be sent to clients to confirm a successful booking. Clients can make payments with mobile money, visa or skrill depending on the amount of the interested facility. 10 | P a g e The problems with the existing systems are the inability of clients to leave a message for management and seeing a particular facility they want to book and use. This system is developed to bring an end to all these inconveniences. 2.5 CONCLUSION Unlike the above sites, the proposed system will have a database that will make it possible for checking of records of a particular facility booked at a specific time. This will ensure clarity and ease of accountability. Clients will also be made to leave messages for management. Email verification will also be sent to clients to confirm booking. These unique features will help to boost efficiency and effectiveness. 11 | P a g e CHAPTER 3 LIFE CYCLE DESIGN OF THE PROPOSED SYSTEM 3.1 INTRODUCTION This chapter describes the methodology that was used to develop the web-based application. (O’Leary, 2004) Describes methodology as the framework, which is associated with a particular set of paradigmatic assumptions that we will use to conduct our research. (Alan, 2005) Insists that when conducting a research methodology, it should meet the following two criteria: Firstly, the methodology should be the most appropriate to achieve objectives of the research. Secondly, it should be made possible to replicate the methodology used in other researches of the same nature. This research study was conducted based on the waterfall model. Methodology plays an important role in implementing this research study accordingly. The details of the methodology are explained in this chapter. Software life cycle is a general model of software development process, including all the activities and work products required to develop an auditorium booking system. A software life cycle model is composed of a number of clearly defined and distinct work phases, which can be used to plan test, design, build, and test and deliver the web-based application. Software life cycle aims to produce high systems that meet and exceed customer expectations, based on customer requirements, by delivering systems that move 12 | P a g e through each clearly defined phases, within scheduled periods and cost estimates. Software life cycle captures the order in which these activities are to be taken. 3.2 CRYSTALIZATION OF THE PROBLEM The system allows client to conveniently navigate through the website to check dates available for reservations and successfully booking the facility from their comfort zones. Clients can also make enquiries, payments, cancellation of bookings and so many other actions on the website. It actually saves time because clients can access and utilize the website from anywhere and at any time. They do not need to come all the way to the school to book or secure a place in the auditorium. 3.3 ANALYSIS AND DESIGN OF THE SYSTEM This part of the research proposal involves the use of system analysis and design as a tool. It is dedicated to the requirement collection (done with the collaboration of the client), the design of the system, done using UML use cases and class diagrams, and of the relational database, done with (extended entity relationship diagram (EER) as modeling technique). 3.3.1 System requirement A new user can register, or login to the website if he/she has already registered. After the user enters the login credentials, the user’s information is going to be stored in the browser’s local storage. This information is going to facilitate authenticating the type of user on other pages of the website. After a successful log in, the client is eligible to check for dates and times available for booking, he or she can further make a reservation and then proceed to make payment using the payment options available. A successful booking 13 | P a g e is made after the administrator confirms receipt of the payment else reservation expires after 12 hours. 3.3.2 FUNCTIONAL REQUIREMENT Functional requirement defines the specific function that the system performs, in conjunction with the data operated by the functions. The functional requirements are presented in scenarios that depict an operational user from the perspective of its end users. Below are examples of all the system features and an enumeration of the entire specific requirement associated with these features. The system shall incorporate mechanism to authenticate its users and the system shall verify and validate all user input and should notify in case of error detection and should help the user in error correction. 3.3.3 NON-FUNCTIONAL REQUIREMENT Non-functional requirements address aspects of the system other than the specific functions it performs. These aspects include system performance, costs, and such general system characteristics as reliability, security, and portability. The non-functional requirements also address aspects of the system development process and operational personnel. It includes the following: 14 | P a g e  The system shall be user friendly and consistent.  The system shall provide attractive graphical interface for the user.  The system shall allow developer access to installed environment.  The system shall target customer base. 3.3.4 Hardware requirement The system would employ third-party source components. Some of these include components that would allow the applications to focus on the functionality of the system: reporting, documenting, management, notification, interfaces and securities. Some of the hardware and software, which would be used in the development of the application, include; Server side Processor 2.20 GHz Ram 4 GB Hard drive 50 GB Free Space Client side Processor 1.80 GHz Ram 2 GB Hard drive 10 GB Free Space 3.3.5 Software requirement Server side 15 | P a g e Operating system :- Windows server 2016 or higher version of server OS Framework :- Net framework 4.0 Web Server :- XAMPP Server Front End:- HTML, CSS and JavaScript Back End :- MYSQL Client side Operating system Windows 2007 or higher support version of Operating System Browser :- Internet Explorer 11, Mozilla Firefox 63.0 beta or higher version. 16 | P a g e 3.4 FLOW CHART DIAGRAM START VIEW WEBSITE Admin login Client login Reserve a date Valid user Id & password Pay Admin Update info. Log out Stop Figure 3.4 Flow chart diagram 17 | P a g e Cancel 3.4.1 Context diagram Login request Login Auditoriu m Booking Administrator Managem ent system Figure 3.4.1 Context diagram 18 | P a g e Confirm Client 3.4.2 Data flow diagram ADMIN BOOKING SYSTEM MANAGER Figure 3.4.2 Data Flow Diagram 19 | P a g e USER 3.4.3 Use case diagram The first step for the functional requirement collection are the use cases. Use cases are “a description of set of sequences of actions, including variants, that a system performs that yield an observable result of value to an actor”. They are used in order to: design system from user’s perspective, communicate system behavior in user’s term and enumerate all externally visible behavior. Here are the use cases for the auditorium booking system project (there are two actors for the system: a client and an administrator). SIGN UP / SIGN IN CHECK FOR DATES AVAILABLE FOR BOOKING SELECT PREFERRED FACILITY AND SERVICE SELECT THE TYPE OF EVENT CLIENT 20 | P a g e CHECK TERMS AND CONDITIONS AND PAYMENT METHODS MAKE PAYMENT CONFIRM DEPOSIT MADE BY CLIENTS APPROVE OR DECLINE BOOKINGS REVIEW REPORTS OF THE VARIOUS TRANSACTIONS WITHIN A Figure 3.4.3: Use Case Diagram 21 | P a g e ADMINISTRATOR 3.5 TOOL USED The auditorium booking management system followed the totally dynamic web based rule. In this system, we used some web programming languages. The following software, tools & frameworks were selected and used for accomplishing the project: Front end: HTML, CSS Back end: PHP Storm IDE Database: MySQL, JavaScript, i. HTML First developed by Tim Berners-Lee in 1990, HTML is short for Hypertext Markup Language. HTML is used to create electronic documents (called pages) that are displayed on the World Wide Web. Each page contains a series of connections to other pages called hyperlinks. Every web page you see on the Internet is written using one version of HTML code or another. HTML code ensures the proper formatting of text and images for your Internet browser. Without HTML, a browser would not know how to display text as elements or load images or other elements. HTML also provides a basic structure of the page, upon which Cascading Style Sheets are overlaid to change its appearance. One could think of HTML as the bones (structure) of a web page, and CSS as its skin (appearance). (computer hope, 2019) 22 | P a g e ii. Bootstrap / Cascading Style Sheets Bootstrap and Cascading Style Sheets are languages used for describing the presentation of Web pages, including colors, layout and fonts. It allows one to adapt the presentation to different types of devices, such as large screens, small, or printers. They are independent of HTML and can used with any XML-based markup language. iii. PHP (Hypertext Pre-processor) PHP (recursive acronym for PHP Hypertext Pre-processor) is a widely used open source general purpose scripting language that is especially suited for web development and can be embedded into HTML. Since this project will be based online, it will be appropriate to develop this project using PHP. It is a server side scripting language that is used to develop dynamic web content and allows for the communication with the database. (Ahmed, 2016) iv. MICROSOFT SQL SERVER 2008. A database management system (DBMS) is computer software designed for managing databases, a large set of structured data, and run operations on the data requested by numerous users. SQL Server 2008 the best version we intended to use to manage the booking database, which was released on 6 August 2008. v. JavaScript JavaScript is a programming language, which is used to create web pages. It is a lightweight, prototype based, explained, object-oriented language including first class 23 | P a g e functions. For web pages, it is also known as the multi-paradigm scripting language. However, many non-browser environments also contain java script. It runs on the client side of the web pages. It is used to design how the web pages’ treat on the incident of an event. It is easy to learn and broadly used to control web pages’ attitude 3.6 CONCLUSION In this chapter, we have discussed about the platforms and technical object that is used in our entire project. We used PHP Code Igniter to develop our web site. With the help of Bootstrap, we design and align our website’s TEXT contents and connect the website to MySQL database server for storing and retrieving data from the RDBMS. The overall work is based on PHP Code Igniter and MySQL, which are very popular platform. 24 | P a g e CHAPTER 4 SYSTEM TESTING, IMPLEMENTATION AND DOCUMENTATION 4.1 INTRODUCTION The process of checking whether the developed system is working according to the original requirements and objectives of clients is known as system testing. There are basically two sources of data for testing. These are Live and Artificial. Live data are actually extracted from the organization’s files. Artificial data are generated for test purposes only. The purpose of system testing is to test the system systematically. It is the application developer’s last opportunity to check that the system works before asking the users to accept it. Therefore, it is often split between test running and bug fixing. This helps ensure adequate control over the way corrections are applied to the system and system test version control documents are kept. System testing incorporates a number of other classes of testing. 4.2 TESTING OF THE NEW SYSTEM 4.2.1 Unit testing The first level of test is unit testing. The purpose of unit testing is to ensure that each subprogram (subroutine) is fully tested. To successfully test a system, the programmer writes a test plan. A test Plan is a document that describes the objectives, scope, approach, and focus of a software testing effort. This includes a number of test runs such as the valid paths through the code, the exception and error handling paths. 25 | P a g e 4.2.2 Functional testing Functional testing is a type of software testing whereby the system is tested against the functional requirement. Features are tested by feeding them input and examining the output. Functional testing ensures that the requirements are satisfied by the application. (Shormistha-Chatterjee, 2019) 4.2.3 Usability testing Usability testing is method used to evaluate how easy a website is to use. The tests take place with real users to measure how usable a website is and how easy it is for users to reach their goals. This testing takes place with actual user or customers of the product. 4.2.4 Acceptance testing Acceptance testing is a level of software testing where a system is tested for acceptability. The purpose of this test is to evaluate the systems compliance with the business requirements and assess whether it is acceptable for delivery 4.2.5 Visual (live) testing This involves testing individual page elements and checking that each one appears in the right shape, position, and size. By using visual testing combined with your existing developer tests, you'll be able to detect visual issues in the early stages of your development cycle 4.3 IMPLEMENTATION OF THE NEW SYSTEM As technologies change, many organizations find themselves needing to change over their computer information systems. Upgrading these systems help them optimize their efficiency and 26 | P a g e remain competitive. Common changeover areas include security systems, database systems, accounting systems and managerial information systems. Deciding which changeover technique will work best for a particular company depends on the type of changeover and degree of risk for the company. 4.3.1 Parallel Changeover In a parallel changeover, the new system runs simultaneously with the old for a given period of time. Of all the techniques, this tends to be the most popular, mainly because it carries the lowest risk. If something goes wrong at any point, the entire system can be reverted back to its original state. A primary disadvantage in running two systems at the same time is higher costs. The parallel changeover process also can be quite time-consuming. 4.3.2 Direct Changeover Direct changeover, also referred to as immediate replacement, tends to be the least favorite of the changeover techniques. In a direct changeover, the entire system is replaced instantly. Basically, as soon as the new system is powered up, the old system is shut down. This type of changeover carries the most risk because, if something goes wrong, reverting back to the old system usually is impossible. Using the direct changeover technique tends to work best in situations where a system failure isn't critical enough to result in a disaster for the company. 4.3.3 Phased Changeover The phased changeover technique is considered a compromise between parallel and direct changeovers. In a phased changeover, the new system is implemented one stage at a time. As an example, consider a company working toward installing a new financial system. Implementing 27 | P a g e the new system one department at a time, the company converts accounts receivable, accounts payable, payroll, and so on. Advantages to phased changeovers are their low cost and isolated errors. The main disadvantage is the process takes a long time to complete because phases need to be implemented separately. 4.3.4 Pilot Changeover With a pilot changeover, the new system is tried out at a test site before launching it companywide. For example, a bank may first test the system at one of its branches. This branch is referred to as the pilot, or beta, site for the program. Since parallel changeovers tend to be expensive, using the pilot changeover technique allows companies to run the new system next to their old but on a much smaller scale. This makes the pilot changeover method much more cost-effective. After the kinks are worked out of the system at the test site, companies usually opt to use the direct changeover technique to launch the system company-wide. (Robertson, Chron, n.d.) Due to the numerous complaints of the stressful process from clients and the facility managers, the researchers intend to consider the direct change over in implementing the proposed system to immediately address and solve the problem. 4.4 SYSTEM DOCUMENTATION 4.4.1 About the system 28 | P a g e Figure 4.4.1: Home Page Description: this page presents the client or the user to sign in or create an account to help use the system. 5 29 | P a g e Figure 4.4.2: Booking Request Page This page helps to check availability of space and facility. Figure 4.4.3: Facilities page This page allows selecting and having a view of the facilities available in the auditorium so that a choice would be made. 30 | P a g e figure 4.4.4: Facilities selection page This makes provisions for a user to select the preferred facility. Figure 4.4.5: Payment options page 31 | P a g e This pages provides a platform for transactions or payments options of a preferred facility and service. Figure 4.4.6: Payment page This pages provides a platform for transactions or payments of a preferred facility and service. It also present terms and conditions, policies, and declarations of the auditorium. 32 | P a g e Figure 4.4.7: Leave a message page This allows users and clients to leave suggestions or messages for the management of the auditorium. . 33 | P a g e Figure 4.4.9: Records Page This page allows the administrator to view the details fed in by the clients. 34 | P a g e Figure 4.4.1.1 Details of Facility page This allows the administrator to enter details of a preferred facility. Figure 4.4.1.2 : Services detail page 35 | P a g e This interface enables the administrator to add a new service for users who want to enjoy extra services. Figure 4.4.1.3: Details Records This presents the administrator with the details being fed by the clients. 36 | P a g e Figure 4.4.1.4: Report Generation Page This presents the administrator an opportunity to view and generate the details fed into the system. 37 | P a g e Figure 4.4.1.5: Policies Page This enables to view the terms and conditions, policies, and declarations of the auditorium. 38 | P a g e 4.4.1.6 Getting started Figure 4.5.6: Local server page This is where the system is locally ran. 39 | P a g e CHAPTER 5 CONCLUSION AND RECOMMENDATION. 5.1 INTRODUCTION Recently, internet has become very common which people use every time. Internet is used through desktop, laptop, tablets and smart phones that can be found in the hands of a great number of people in the world. The documented auditorium booking management project is actually an attempt to establish a system by which the users can book the UPSA auditorium from their comfort zones. It was a very challenging project due to the distractions of the novel corona virus pandemic, we could not collect as much data as we needed but we endeavored to fully complete it at the required period. At the initial stage, we did not know how the interface would be. Though it is challenging to build up a new project, we have built it. We think it is the first auditorium booking management system for UPSA. Clients can successfully secure spaces in the auditorium within few minutes without having to move to the school hence valuable time will be saved. 5.2 SUMMARY Auditorium Booking Management System is a platform that provides interested parties the opportunity to secure a space or facility in an auditorium irrespective of the place you are, provided you are connected or have access to the internet. This has saved the time and has ease clients’ efforts to booking a space. Online Auditorium Booking Management System has made booking of facilities easier, faster, and convenient and has driven business to a new phase, compelling competitors to make adjustments in order to prevent them from lagging behind. The 40 | P a g e outcome of this project underscores the need for auditorium managers to take online market seriously. Our survey established that stakeholders of the auditorium are fed up with the hectic process the manual process presents them and they would like a technology driven process that would bring an end to their inconveniences. 5.3 RECOMMENDATIONS User requirements keep changing as the system is being used. Some of the future enhancements that can be done to this system are: i. As the technology emerges, it is possible to upgrade the system and can be adaptable to desired environment. ii. Because it is based on object-oriented design, any further changes can be easily adaptable. iii. Based on the future security issues, security can be improved using emerging technologies. iv. iv. Sub modules can be added. v. Any in-built web browser can be added. 5.4 CONCLUSION The “Auditorium booking management system” was successfully developed and is tested for accuracy and quality. During this project, we have accomplished all the objectives and this project meets the needs of the organization. 41 | P a g e References 1. Acharya, Kamal, Attendance Management System Project (April 28, 2024). Available at SSRN: https://ssrn.com/abstract=4810251 or https://dx.doi.org/10.2139/ssrn.4810251 2. Acharya, Kamal, Online Food Order System (May 2, 2024). Available at SSRN: https://ssrn.com/abstract=4814732 or https://dx.doi.org/10.2139/ssrn.4814732 3. Acharya, Kamal, University management system project. (May 1, 2024). Available at SSRN: https://ssrn.com/abstract=4814103 or https://dx.doi.org/10.2139/ssrn.4814103 4. Acharya, Kamal, Online banking management system. (May 1, 2024). Available at SSRN: https://ssrn.com/abstract=4813597 or https://dx.doi.org/10.2139/ssrn.4813597 5. Acharya, Kamal, Online Job Portal Management System (May 5, 2024). Available at SSRN: https://ssrn.com/abstract=4817534 or https://dx.doi.org/10.2139/ssrn.4817534 6. Acharya, Kamal, Employee leave management system. (May 7, 2024). Available at SSRN: https://ssrn.com/abstract=4819626 or https://dx.doi.org/10.2139/ssrn.4819626 7. Acharya, Kamal, Online electricity billing project report. (May 7, 2024). Available at SSRN: https://ssrn.com/abstract=4819630 or https://dx.doi.org/10.2139/ssrn.4819630 8. Acharya, Kamal, POLICY MANAGEMENT SYSTEM PROJECT REPORT. (December 10, 2023). Available at SSRN: https://ssrn.com/abstract=4831694 or https://dx.doi.org/10.2139/ssrn.4831694 9. Acharya, Kamal, Online job placement system project report. (January 10, 2023). Available at SSRN: https://ssrn.com/abstract=4831638 or https://dx.doi.org/10.2139/ssrn.4831638 10. Acharya, Kamal, Software testing for project report. (May 16, 2023). Available at SSRN: https://ssrn.com/abstract=4831028 or https://dx.doi.org/10.2139/ssrn.4831028 11. Acharya, Kamal, ONLINE CRIME REPORTING SYSTEM PROJECT. (August 10, 2022). Available at SSRN: https://ssrn.com/abstract=4831015 or https://dx.doi.org/10.2139/ssrn.4831015 12. Acharya, Kamal, Burger ordering system project report. (October 10, 2022). Available at SSRN: https://ssrn.com/abstract=4832704 or https://dx.doi.org/10.2139/ssrn.4832704 13. Acharya, Kamal, Teachers Record Management System Project Report (December 10, 2023). Available at SSRN: https://ssrn.com/abstract=4833821 or https://dx.doi.org/10.2139/ssrn.4833821 14. Acharya, Kamal, Dairy Management System Project Report (December 20, 2020). Available at SSRN: https://ssrn.com/abstract=4835231 or https://dx.doi.org/10.2139/ssrn.4835231 15. Acharya, Kamal, Electrical Shop Management System Project (December 10, 2019). Available at SSRN: https://ssrn.com/abstract=4835238 or https://dx.doi.org/10.2139/ssrn.4835238 42 | P a g e 16. Acharya, Kamal, Online book store management system project report. (Febuary 10, 2020). Available at SSRN: https://ssrn.com/abstract=4835277 or https://dx.doi.org/10.2139/ssrn.4835277 17. Acharya, Kamal, Paint shop management system project report. (January 10, 2019). Available at SSRN: https://ssrn.com/abstract=4835441 or https://dx.doi.org/10.2139/ssrn.4835441 18. Acharya, Kamal, Supermarket billing system project report. (August 10, 2021). Available at SSRN: https://ssrn.com/abstract=4835474 or https://dx.doi.org/10.2139/ssrn.4835474 19. Acharya, Kamal, Online taxi booking system project report. (March 10, 2022). Available at SSRN: https://ssrn.com/abstract=4837729 or https://dx.doi.org/10.2139/ssrn.4837729 20. Acharya, Kamal, Online car servicing system project report. (March 10, 2023). Available at SSRN: https://ssrn.com/abstract=4837832 or https://dx.doi.org/10.2139/ssrn.4837832 21. Acharya, Kamal, School management system project report. (July 10, 2021). Available at SSRN: https://ssrn.com/abstract=4837837 or https://dx.doi.org/10.2139/ssrn.4837837 22. Acharya, Kamal, Furniture Showroom Management System Project Report (March 21, 2021). Available at SSRN: https://ssrn.com/abstract=4839422 or https://dx.doi.org/10.2139/ssrn.4839422 23. Acharya, Kamal, Online Vehicle Rental System Project Report (March 21, 2019). Available at SSRN: https://ssrn.com/abstract=4839429 or https://dx.doi.org/10.2139/ssrn.4839429 24. Acharya, Kamal, Fruit Shop Management System Project Report (August 10, 2023). Available at SSRN: https://ssrn.com/abstract=4841048 or https://dx.doi.org/10.2139/ssrn.4841048 25. Acharya, Kamal, Hall Booking Management System Project Report (December 21, 2023). Available at SSRN: https://ssrn.com/abstract=4841055 or https://dx.doi.org/10.2139/ssrn.4841055 26. Acharya, Kamal, Lundry Management System Project Report (October 21, 2023). Available at SSRN: https://ssrn.com/abstract=4841059 or https://dx.doi.org/10.2139/ssrn.4841059 27. Acharya, Kamal, A CASE STUDY OF CINEMA MANAGEMENT SYSTEM PROJECT (September 25, 2023). Available at SSRN: https://ssrn.com/abstract=4841209 or https://dx.doi.org/10.2139/ssrn.4841209 28. Acharya, Kamal, A CASE STUDY ON ONLINE TICKET BOOKING SYSTEM PROJECT (May 25, 2024). Available at SSRN: https://ssrn.com/abstract=4841210 or https://dx.doi.org/10.2139/ssrn.4841210 29. Acharya, Kamal, ONLINE DATING MANAGEMENT SYSTEM PROJECT REPORT. (April 25, 2023). Available at SSRN: https://ssrn.com/abstract=4842066 or https://dx.doi.org/10.2139/ssrn.4842066 30. Acharya, Kamal, ONLINE RESUME BUILDER MANAGEMENT SYSTEM PROJECT REPORT. (April 25, 2021). Available at SSRN: https://ssrn.com/abstract=4842071 or https://dx.doi.org/10.2139/ssrn.4842071 43 | P a g e 31. Acharya, Kamal, TOLL TEX MANAGEMENT SYSTEM PROJECT REPORT (August 21, 2023). Available at SSRN: https://ssrn.com/abstract=4842082 or https://dx.doi.org/10.2139/ssrn.4842082 32. Acharya, Kamal, Chat Application Through Client Server Management System Project Report (June 25, 2023). Available at SSRN: https://ssrn.com/abstract=4842761 or https://dx.doi.org/10.2139/ssrn.4842761 33. Acharya, Kamal, Web Chatting Application Management System Project Report (April 25, 2022). Available at SSRN: https://ssrn.com/abstract=4842771 or https://dx.doi.org/10.2139/ssrn.4842771 34. Acharya, Kamal, Automobile management system project report (May 25, 2022). Available at SSRN: https://ssrn.com/abstract=4846917 or https://dx.doi.org/10.2139/ssrn.4846917 35. Acharya, Kamal, College bus management system project report (April 25, 2023). Available at SSRN: https://ssrn.com/abstract=4846920 or https://dx.doi.org/10.2139/ssrn.4846920 36. Acharya, Kamal, Courier management system project report (May 25, 2023). Available at SSRN: https://ssrn.com/abstract=4846922 or https://dx.doi.org/10.2139/ssrn.4846922 37. Acharya, Kamal, Event management system project report (April 25, 2021). Available at SSRN: https://ssrn.com/abstract=4846927 or https://dx.doi.org/10.2139/ssrn.4846927 38. Acharya, Kamal, Library management system project report II (May 25, 2020). Available at SSRN: https://ssrn.com/abstract=4848857 or https://dx.doi.org/10.2139/ssrn.4848857 39. Kamal Acharya. Teacher record management system project report. Authorea. August 02, 2024. DOI: https://doi.org/10.22541/au.172261514.46787329/v1 40. Kamal Acharya. POST OFFICE MANAGEMENT SYSTEM PROJECT REPORT. Authorea. August 02, 2024. DOI: https://doi.org/10.22541/au.172261514.44494375/v1 41. Kamal Acharya. Fruit shop management system project report. Authorea. August 02, 2024. DOI: https://doi.org/10.22541/au.172261514.42227675/v1 42. Kamal Acharya. Dairy management system project report. Authorea. August 02, 2024. DOI: https://doi.org/10.22541/au.172261513.39402347/v1 43. Kamal Acharya. DATA COMMUNICATION AND COMPUTER NETWORK MANAGEMENT SYSTEM PROJECT REPORT. Authorea. August 01, 2024. DOI: https://doi.org/10.22541/au.172254873.37480177/v1 44. Kamal Acharya. School management system project report. Authorea. August 01, 2024. DOI: https://doi.org/10.22541/au.172254873.34023165/v1 45. Kamal Acharya. A CASE STUDY OF CINEMA MANAGEMENT SYSTEM PROJECT. Authorea. August 01, 2024. DOI: https://doi.org/10.22541/au.172254873.30191075/v1 46. Kamal Acharya. A CASE STUDY ON ONLINE TICKET BOOKING SYSTEM PROJECT. Authorea. August 01, 2024 DOI: https://doi.org/10.22541/au.172254872.26972790/v1 44 | P a g e 47. Kamal Acharya. Web chatting application project report management system. Authorea. August 01, 2024. DOI: https://doi.org/10.22541/au.172254871.18588592/v1 48. Kamal Acharya. RETAIL STORE MANAGEMENT SYSTEM PROJECT REPORT. Authorea. August 01, 2024. DOI: https://doi.org/10.22541/au.172254871.14590154/v1 49. Kamal Acharya. SUPERMARKET MANAGEMENT SYSTEM PROJECT REPORT. Authorea. August 01, 2024. DOI: https://doi.org/10.22541/au.172252491.19145062/v1 50. Kamal Acharya. SOCIAL MEDIA MANAGEMENT SYSTEM PROJECT REPORT. Authorea. August 01, 2024. DOI: https://doi.org/10.22541/au.172252491.11210579/v1 51. Kamal Acharya. Online music portal management system project report. Authorea. August 01, 2024. DOI: https://doi.org/10.22541/au.172252488.89734698/v1 52. Kamal Acharya. COLLEGE BUS MANAGEMENT SYSTEM PROJECT REPORT. Authorea. July 31, 2024. DOI: https://doi.org/10.22541/au.172245277.70798942/v1 53. Kamal Acharya. AUTOMOBILE MANAGEMENT SYSTEM PROJECT REPORT. Authorea. July 31, 2024. DOI: https://doi.org/10.22541/au.172245276.67982593/v1 54. Kamal Acharya. Ludo management system project report. Authorea. July 31, 2024 DOI: https://doi.org/10.22541/au.172243999.98091616/v1 55. Kamal Acharya. Literature online quiz system project report. Authorea. July 31, 2024 DOI: https://doi.org/10.22541/au.172243825.53562953/v1 56. Kamal Acharya. Avoid waste management system project. Authorea. July 29, 2024 DOI: https://doi.org/10.22541/au.172228528.85022205/v1 57. Kamal Acharya. CHAT APPLICATION THROUGH CLIENT SERVER MANAGEMENT SYSTEM PROJECT. Authorea. July 29, 2024. DOI: https://doi.org/10.22541/au.172228527.74316529/v1 58. Kamal Acharya. Parking allotment system project report. Authorea. July 29, 2024. DOI: https://doi.org/10.22541/au.172227078.89966943/v1 59. Kamal Acharya. HEALTH INSURANCE CLAIM MANAGEMENT SYSTEM. Authorea. July 26, 2024. DOI: https://doi.org/10.22541/au.172202020.06707762/v1 60. Kamal Acharya. ONLINE TRAIN BOOKING SYSTEM PROJECT REPORT. Authorea. July 22, 2024. DOI: https://doi.org/10.22541/au.172167914.45160406/v1 61. Kamal Acharya. COVID MANAGEMENT SYSTEM PROJECT REPORT. Authorea. July 16, 2024. DOI: https://doi.org/10.22541/au.172116616.60220024/v1 62. Kamal Acharya. COVID MANAGEMENT SYSTEM PROJECT REPORT. Authorea. July 16, 2024. DOI: https://doi.org/10.22541/au.172116616.60220024/v1 45 | P a g e APPENDICES I. Appendix: Programming Codes . Admin controller <?php namespace App\Http\Controllers; use Illuminate\Http\Request; use Auth; use Session; use DB; use App\User; use App\Facility; use App\Service; use App\FacilityImages; use App\BookingFacility; class AdminController extends Controller { // public function login(){ return view('admin.login'); } public function home(){ return view('admin.home'); } public function logout(){ Auth::logout(); return redirect('/admin/login'); } public function generateRandomNumber($length=5) { $result = ''; for($i = 0; $i < $length; $i++) { $result .= mt_rand(0, 9); } return $result; } public function authenticate(Request $r){ if(Auth::attempt(['username' => $r->username, 'password' => $r->password],$r->remember)){ return redirect()->intended('/admin/home'); 46 | P a g e } Session::flash('error','Invalid Username or Password'); return back(); } public function account(){ $users = User::all(); return view('admin.account',compact('users')); } public function deleteUser(Request $r){ $del = User::where('id',$r->id)->delete(); if($del){ return ['status'=>'success']; } return ['status'=>'error']; } public function saveaccount(Request $r){ $add = User::create([ 'username'=>$r->username, 'password'=>bcrypt($r->password) ]); if($add){ Session::flash('success','New Account Added Successfully'); return back(); } Session::flash('error','User could not be added'); return back(); } public function addFacility(){ return view('admin.addfacility'); } public function saveFacility(Request $r){ //return $r->all(); $confadd = []; $musicadd= []; if(isset($r->conf_add_count) && $r->conf_add_count >=1){ for($i=1;$i<=$r->conf_add_count;$i++){ array_push($confadd,['conf_add_amount'=>$r->{'conf_add_amount'.$i},'conf_add_hour'=>$r>{'conf_add_hour'.$i}]); } } 47 | P a g e if(isset($r->music_add_count) && $r->music_add_count >=1){ for($i=1;$i<=$r->music_add_count;$i++){ array_push($musicadd,['music_add_amount'=>$r>{'music_add_amount'.$i},'music_add_hour'=>$r->{'music_add_hour'.$i}]); } } $mainimage = null; if($file = $r->file('main_image')){ $ext = $file->extension(); $newname = $this->generateRandomNumber(20).'.'.$ext; $file->move('storage', $newname); $mainimage = $newname; } $add = Facility::create([ 'name'=>$r->name, 'description'=>$r->description, 'capacity'=>$r->capacity, 'conf_fixed_price'=>$r->conf_amount, 'conf_fixed_hours'=>$r->conf_hours, 'conf_additional_price'=>json_encode($confadd), 'music_fixed_price'=>$r->music_amount, 'music_fixed_hours'=>$r->music_hours, 'image'=>$mainimage, 'music_additional_price'=>json_encode($musicadd) ]); if($add){ if($r->hasFile('supporting_images')){ $files = $r->file('supporting_images'); foreach($files as $file) { $ext = $file->extension(); $newname = $this->generateRandomNumber(20).'.'.$ext; $file->move('storage', $newname); FacilityImages::create([ 'facility_id'=>$add->id, 'image'=> $newname ]); } } Session::flash('success','New Facility Added Successfully'); return back(); } 48 | P a g e else{ Session::flash('error','Error Whiles Adding a new Facility. Try again'); return back(); } } public function facilityList(){ $facilities = Facility::all(); return view('admin.facilitylist',compact('facilities')); } public function deleteFacility(Request $r){ $del = Facility::where('id',$r->id)->delete(); if($del){ return ['status'=>'success']; }else{ return ['status'=>'error']; } } public function addService(){ return view('admin.addservice'); } public function saveService(Request $r){ //return $r->all(); $confadd= []; if(isset($r->conf_add_count) && $r->conf_add_count >=1){ for($i=1;$i<=$r->conf_add_count;$i++){ array_push($confadd,['add_amount'=>$r->{'conf_add_amount'.$i},'add_hour'=>$r>{'conf_add_hour'.$i}]); } } $add = Service::create([ 'name'=>$r->name, 'description'=>$r->description, 'type'=>$r->type, 'fixed_price'=>$r->conf_amount, 'fixed_hours'=>$r->conf_hours, 'additional_price'=>json_encode($confadd) ]); if($add){ Session::flash('success','New Service Added Successfully'); return back(); 49 | P a g e } else{ Session::flash('error','Error Whiles Adding a new Service. Try again'); return back(); } } public function serviceList(){ $services = Service::all(); return view('admin.servicelist',compact('services')); } public function deleteService(Request $r){ $del = Service::where('id',$r->id)->delete(); if($del){ return ['status'=>'success']; }else{ return ['status'=>'error']; } } public function clients(){ return view('admin.client'); } public function showhide($id,$status){ Facility::where('id',$id)->update(['status'=>$status]); Session::flash('success','Action Completed Successfully'); return redirect('/admin/facilitylist'); } public function settings(){ $settings = DB::table('settings')->where('id',1)->first(); return view('admin.settings',compact('settings')); } public function saveSettings(Request $r){ $save = DB::table('settings')->where('id',1)->update([ 'terms'=>$r->terms, 'policy'=>$r->policy, 'declaration'=>$r->declaration ]); Session::flash('success','Settings Updated Successfully'); return back(); } 50 | P a g e public function messages(Request $r){ $messages = DB::table('messages')->orderBy('id','DESC')->get(); return view('admin.messages',compact('messages')); } public function reports(){ return view('admin.reports'); } public function fetchreport(Request $r){ $dates = explode('-',$r->dateranges); $startdate = date('Y-m-d H:i',strtotime($dates[0])); $enddate = date('Y-m-d H:i',strtotime($dates[1])); if($r->facilities=='all'){ $bookings = BookingFacility::where('startdate','>=',$startdate)>where('enddate','<=',$enddate)->get(); }else{ $bookings = BookingFacility::where('facility_id',$r->facilities)>where('startdate','>=',$startdate)->where('enddate','<=',$enddate)->get(); } return view('admin.reports',compact('bookings')); } } Front end controller <?php namespace App\Http\Controllers; use Illuminate\Http\Request; use App\Client; use Session; use Auth; use Hash; use App\Facility; use App\Service; use App\Slydepay\SlydeIntegrated; use App\Booking; use App\BookingFacility; use Mail; use DB; class FrontendController extends Controller { 51 | P a g e // public function book(){ return view('book'); } public function checkStatus(Request $r){ //return $r->all(); $dates = explode('-',$r->thedate); $startdate = date('Y-m-d H:i',strtotime($dates[0])); $enddate = date('Y-m-d H:i',strtotime($dates[1])); if(BookingFacility::where('facility_id',$r->facility)->where('startdate','>=',$startdate)>where('enddate','<=',$enddate)->exists()){ Session::flash('error','Date you have selected has already been booked'); return back(); } Session::flash('success','Date you have selected is Available. Start Booking'); return back(); } public function generateRandomNumber($length=5) { $result = ''; for($i = 0; $i < $length; $i++) { $result .= mt_rand(0, 9); } return $result; } public function login(){ return view('login'); } public function signup(){ return view('signup'); } public function logout(){ Auth::guard('client')->logout(); return redirect('/'); } public function createClient(Request $r){ $checkemail = Client::where('email',$r->email)->exists(); 52 | P a g e if($checkemail){ Session::flash('error','Sorry. This email already exists in our system.'); return back(); } $token = $this->generateRandomNumber(20); $add = Client::create([ 'surname'=>$r->surname, 'othernames'=>$r->othernames, 'phone'=>$r->phone, 'email'=>$r->email, 'password'=>bcrypt($r->password), 'emailtoken'=>$token ]); if($add){ try{ $link = url('/activate').'/'.$token.'/'.$add->id; Mail::send('emails.register',['surname' => $r->surname,'link'=>$link],function ($m) use ($r){ $m->from('[email protected]', 'UPSA Auditorium Booking'); $m->to($r->email)->subject('User Account Activation'); }); }catch(\Exception $e){} Session::flash('success','Account Creation Successful.Please Check your Email to Activate Account '.$link); return redirect('/login'); } Session::flash('error','Error Whiles Creating Account. Please try again'); return back(); } public function activateAccount($token,$id){ $find = Client::where('emailtoken',$token)->where('id',$id)->exists(); if($find){ Client::where('id',$id)->update([ 'activated'=>1, 'emailtoken'=>'' ]); Session::flash('success','Your Account Has been Activated Successfully. Login to Continue'); return redirect('/login'); }else{ return view('errors.404'); } } 53 | P a g e public function authenticate(Request $r){ if(env('VALIDATEBEFORELOGIN','false')=='true'){ $check = Client::where('email',$r->email)->where('activated',0)->exists(); if($check){ Session::flash('error','Sorry.. Your Account has not been activated.. Please check your email and activated it or Contact System Admin'); return back(); } } if(Auth::guard('client')->attempt(['email' => $r->email, 'password' => $r->password])){ return redirect()->intended('/book'); } Session::flash('error','Invalid Username or Password'); return back(); } public function gotobook1(Request $r){ Session::put('eventdetails',$r->all()); $getdate = explode('-',$r->eventdate); $getdate[0] = $this->formatDate(trim($getdate[0])); $getdate[1] = $this->formatDate(trim($getdate[1])); if(Booking::where('startdate','>=',$getdate[0])->where('enddate','<=',$getdate[1])->exists()){ Session::flash('error','Sorry the date you selected is not available.. Choose another event date'); return back(); } return redirect('/book1'); } public function book1(){ if(!Session::has('eventdetails')){ return redirect('/book'); } //dd(Session::get('eventdetails')); $facilities = Facility::where('status',1)->get(); return view('book1',compact('facilities')); } public function addtocart(Request $r){ if(Session::has('cart')){ $cart = Session::get('cart'); }else{ $cart = []; 54 | P a g e } array_push($cart,$r->except(['_token'])); Session::put('cart',$cart); Session::flash('success','Item Successfully Added to Cart'); return back(); } public function book2(){ if(!Session::has('eventdetails')){ return redirect('/book'); } if(!Session::has('cart')){ return redirect('/book1'); } $cart = Session::get('cart'); //dd($cart); if(count($cart)==0){ Session::flash('error','No Item in cart'); return redirect('/book1'); } $services = Service::all(); return view('book2',compact('cart','services')); } public function account(){ return view('account'); } public function savePassword(Request $r){ $client = Client::where('id',Auth::guard('client')->user()->id)->first(); if(Hash::check($r->oldpassword,$client->password)){ $client->password = bcrypt($r->password); $client->save(); Session::flash('success','Password Updated Successfully'); return back(); } Session::flash('error','Old Password you entered is invalid '); return back(); } public function makePayment(Request $r){ $cust_ref = $this->generateRandomNumber(10); $pay = SlydeIntegrated::createInvoice($cust_ref,$r->description,$r->amount); 55 | P a g e //dd($pay); if($pay['status']=='success'){ Session::put('paydetails',['cust_ref'=>$cust_ref,'amount'=>$r->amount]); return redirect("https://app.slydepay.com/paylive/detailsnew.aspx?pay_token=".$pay['response']>result->payToken); } Session::flash('error','Payment Initialization failed... try again'); return back(); } public function formatDate($date){ $getpart = explode(' ',$date); $datepart = explode('/',$getpart[0]); $newdate = $datepart[2].'-'.$datepart[1].'-'.$datepart[0]; return $newdate.' '.$getpart[1]; } public function response(Request $r){ if(isset($r->status)){ if($r->status==0){ $ev = Session::get('eventdetails'); $cart = Session::get('cart'); $paydetails = Session::get('paydetails'); $dates = explode('-',$ev['eventdate']); $startdate = date('Y-m-d H:i',strtotime($dates[0])); $enddate = date('Y-m-d H:i',strtotime($dates[1])); $savetodb = Booking::create([ 'nameofperson'=>$ev['nameofperson'], 'website'=>$ev['website'], 'rep_person'=>$ev['rep_person'], 'rep_phone'=>$ev['rep_phone'], 'rep_email'=>$ev['rep_email'], 'description'=>$ev['description'], 'expnopeople'=>$ev['expnopeople'], 'expnocars'=>$ev['expnocars'], 'startdate'=>$startdate, 'enddate'=>$enddate, 'extrainfo'=>$ev['extrainfo'], 'highprofile'=>$ev['highprofile'], 'package'=>json_encode($cart), 'haspaid'=>1, 'amountpaid'=>$paydetails['amount'], 'payment_method'=>'', 56 | P a g e 'reference'=>$r->cust_ref, 'date_paid'=>date('Y-m-d H:i:s'), 'client_id'=>Auth::guard('client')->user()->id, ]); // $evdate = explode('-',$ev['eventdate']); $facilitybooked = []; foreach($cart as $c){ $getdate = explode('-',$c['date']); $getdate[0] = $this->formatDate(trim($getdate[0])); $getdate[1] = $this->formatDate(trim($getdate[1])); BookingFacility::create([ 'booking_id'=>$savetodb->id, 'facility_id'=>$c['id'], 'type'=>$c['type'], 'thedate'=>$startdate, 'startdate'=>$getdate[0], 'enddate'=>$getdate[1] ]); array_push($facilitybooked,Facility::where('id',$c['id'])->first(['name'])->name); } try{ $data = [ 'surname'=>Auth::guard('client')->user()->surname, 'nameofperson'=>$ev['nameofperson'], 'website'=>$ev['website'], 'description'=>$ev['description'], 'amountpaid'=>$paydetails['amount'], 'facilities'=>$facilitybooked ]; Mail::send('emails.afterpurchase',$data,function ($m){ $m->from('[email protected]', 'UPSA Auditorium Booking'); $m->to(Auth::guard('client')->user()->email)->subject('Order Summary'); }); }catch(\Exception $e){} Session::flash('success','Payment went through Successfully'); return redirect('/book2'); } 57 | P a g e Session::flash('error','Payment was not successful.. Try again'); return redirect('/book2'); } Session::flash('error','Payment was not successful.. Try again'); return redirect('/book2'); } public function payment(){ $payment = Booking::where('client_id',Auth::guard('client')->user()->id)->get(); return view('payment',compact('payment')); } public function removeItem($index){ $cart = Session::get('cart'); if(count($cart)==0){ Session::flash('error','No item in cart'); return back(); } unset($cart[$index]); $cart = array_values($cart); //$ct = array_splice($cart,$index,1); Session::put('cart',$cart); Session::flash('success','Item Successfully removed from cart'); return back(); } public function gallery(){ $facilities = Facility::get(); return view('gallery',compact('facilities')); } public function message(){ return view('messages'); } public function sendmessage(Request $r){ $save = DB::table('messages')->insert([ 'client_id'=>Auth::guard('client')->user()->id, 'message'=>$r->message ]); Session::flash('success','Message Has been Sent Successfully'); return back(); 58 | P a g e } } 59 | P a g e