Professional Documents
Culture Documents
Library Management System
Library Management System
Library Management System
MANAGEMENT SYSTEM
(CASE STUDY: BELLS UNIVERSITY OF TECHNOLOGY LIBRARY)
BY
OKEY IKECHUKWU OGBONNAYA
2010/1282
JUNE, 2014.
i
CERTIFICATION
This is to certify that this project was clearly implemented and documented by OKEY
IKECHUKWU OGBONNAYA of the MATRIC NUMBER 2010/1282, and submitted to the
COMPUTER SCIENCE DEPARTMENT OF INFORMATION AND COMMUNICATION
TECHNOLOGY, BELLS UNIVERSITY OF TECHNOLOGY, OTA, OGUN STATE for the award of a
degree.
Engineer Ezike
Supervisor Signature and Date
ii
DEDICATION
I will like to dedicate this project to God Almighty for seeing me through my stay in the university and
my parents, Engr. C. O. Okey and Mrs. J. O. Okey who gave me the opportunity of becoming a scholar.
I will also like to thank my wonderful siblings Ihuoma and Emmanuel who always show me great
support and love throughout my stay in the university.
iii
ACKNOWLEDGEMENT
All thanks to the Almighty God for his infinite mercy, wisdom, strength and guidance throughout the
course of my academic career.
My profound gratitude to my parents Engr. C. O. Okey and Mrs. J. O. Okey, who have prayed and
cared for me in love right from my birth, May the Almighty God continue to bless you and grant your
heart desires in Jesus Name Amen. For his guidance and immense support, I will like to thank my
supervisor, Engineer Ezike who guided me on the way and manner of carrying out my project plus
encouraged me to struggle and overcome challenges during the course of my project.
For their support, I want to thank the Bells University Library Staffs for supporting me during the
process of development of this project.
I will also like to use the opportunity to show gratitude to the entire COLICT staff for their profound
lectures and guidance they bestowed on me during my stay at the university.
Finally, I want to thank Mr. Augustine Okere [former staff of Fleet Technologies Limited] for his
patience and guidance may God continue to bless you.
iv
ABSTRACT
The main aim of this project is to help solve the current problem of the readers’ service department,
collection and development department, technical department and the e-library. The current
readers’ desk management system automates the basic operations carried out in that department
but still has some limitations and prone to errors that can be caused by the network or the readers’
desk.
The online library management system can be seen as a modern innovation that is expected to help
in the registration of users such as the students and teaching staff of the institution, registration and
the classification of books, extracting and storing the details of e-books, generating reports, accurate
calculation of fines, sending mails to registered users of the system to inform them of the new
collections and remind them to return borrowed materials. This system can perform two automated
tasks with the help of two windows services.
The windows service is a light-weight background program that provides core operating system
functions such as web services, error or report logging etc. In this project, the purpose of the windows
service is to provide web services for automatically adding defaulters to the defaulters list and
deleting user reservations. The main advantage of using a windows service is that the system can still
carry out its automated functions even when the application is not running.
v
TABLE OF CONTENTS
TITLE .......................................................................................................................................................................i
CERTIFICATION ...................................................................................................................................................... ii
DEDICATION ......................................................................................................................................................... iii
ACKNOWLEDGEMENT .......................................................................................................................................... iv
ABSTRACT .............................................................................................................................................................. v
LIST OF FIGURES ................................................................................................................................................. viii
CHAPTER ONE........................................................................................................................................................1
INTRODUCTION .................................................................................................................................................1
1.0 Library Overview ...............................................................................................................................1
1.1 Purpose of a Library ..........................................................................................................................1
1.2 Evolution of Libraries.........................................................................................................................1
1.3 Problem Statement ...........................................................................................................................3
1.4 Motivation .........................................................................................................................................4
1.5 Aim and Objectives............................................................................................................................5
1.5.1 Objectives ......................................................................................................................................5
1.6 Methodology .....................................................................................................................................5
1.7 Justification of Research....................................................................................................................6
1.8 Scope of Research .............................................................................................................................7
1.9 Contribution to Knowledge ...............................................................................................................7
CHAPTER TWO .......................................................................................................................................................8
LITERATURE REVIEW .........................................................................................................................................8
2.0 Library................................................................................................................................................8
2.1 Library Management .........................................................................................................................8
2.2 Library Catalog...................................................................................................................................9
2.3 Online Public Access Catalog [OPAC] ................................................................................................9
2.4 Library Management System (LMS) ............................................................................................... 10
2.5 Related Works ................................................................................................................................ 11
CHAPTER THREE ................................................................................................................................................. 26
SYSTEM DESIGN.............................................................................................................................................. 26
3.0 System Design ................................................................................................................................ 26
3.1 Purpose of System Design .............................................................................................................. 26
3.2 Goal of Proposed System ............................................................................................................... 26
3.3 Phases of Proposed System............................................................................................................ 27
vi
3.4 System Architecture of Proposed Multiplatform Online Library Management System ................ 28
3.5 Four-Tier System Architecture of Proposed System ...................................................................... 31
CHAPTER FOUR................................................................................................................................................... 47
SYSTEM IMPLEMENTATION............................................................................................................................ 47
4.0 System Implementation ................................................................................................................. 47
4.1 The Home Page .......................................................................................................................... 47
4.2 Login Page .................................................................................................................................. 48
4.3 Library Administrator ................................................................................................................. 49
4.4 Circulation Desk Staff ................................................................................................................. 56
4.5 Acquisition Staff ......................................................................................................................... 62
4.6 Library Users ............................................................................................................................... 64
4.7 Classification Staff ...................................................................................................................... 66
4.8 E-Library Administrator .............................................................................................................. 67
CHAPTER FIVE ..................................................................................................................................................... 68
CONCLUSION AND RECOMMENDATION ........................................................................................................ 68
5.1 Conclusion ...................................................................................................................................... 68
5.2 Recommendation ........................................................................................................................... 69
References .......................................................................................................................................................... 70
APPENDIX 1: SOURCE CODE ..................................................................................................................................1
APPENDIX 2: TRANSACT-SQL STATEMENTS ....................................................................................................... 15
vii
LIST OF FIGURES
Figure 3.1 - Four-Tier System Architecture Of Proposed System [Adapted From N. Sivakumar, 2009.] ........... 30
Figure 3.2 - ER-Diagram for the Proposed Library Management System .......................................................... 32
Figure 3.3 – Use Case Diagram for the Proposed Library Management System ……………………………. 33
Figure 3.4 - Sequence Diagram for User Login ................................................................................................... 34
Figure 3.5 - Sequence Diagram for User Registration ........................................................................................ 35
Figure 3.6 - Sequence Diagram for Book Registration ....................................................................................... 36
Figure 3.7 - Sequence Diagram for Book Check-In And Check-Out ................................................................... 37
Figure 3.8 - Sequence Diagram for Searching .................................................................................................... 38
Figure 3.9 - Login Activity Diagram [STUDENT AND STAFF] ............................................................................... 39
Figure 3.10 - Login Activity Diagram [CIRCULATION DESK STAFF] ..................................................................... 40
Figure 3.11 - Login Activity Diagram [COLLECTION AND DEVELOPMENT STAFF] .............................................. 41
Figure 3.12 - Book Registration Activity Diagram .............................................................................................. 42
Figure 3.13 - Registration Activity Diagram........................................................................................................ 43
Figure 3.14 - Search Activity Diagram ................................................................................................................ 44
Figure 3.15 - Class Diagram ................................................................................................................................ 45
Figure 3.16 – Database Diagram ........................................................................................................................ 46
Figure 4.1 – Home Page ..................................................................................................................................... 47
Figure 4.2 – Login Page....................................................................................................................................... 48
Figure 4.3 – User Management [STUDENT REGISTRATION] .............................................................................. 49
Figure 4.4 – User Management [TEACHING STAFF REGISTRATION] .................................................................. 50
Figure 4.5 – User Management [LIBRARY STAFF REGISTRATION] ..................................................................... 50
Figure 4.6 – User Management [LIST OF EXISTING MEMBERS] ......................................................................... 51
Figure 4.7 – User Management [UPDATING EXISTING USER DETAILS] .............................................................. 51
Figure 4.8 – Book Management [BOOK REGISTRATION] ................................................................................... 52
Figure 4.9a – Book Management [VIEW LIBRARY STOCK] ................................................................................. 52
Figure 4.9b – Book Management [VIEW LIBRARY STOCK] ................................................................................. 53
Figure 4.10 – Transaction Log ............................................................................................................................ 53
Figure 4.11a – Fine Records ............................................................................................................................... 54
Figure 4.11b – Fine Records [STUDENT FINE RECORDS] .................................................................................... 54
Figure 4.11c – Fine Records [STAFF FINE RECORDS] .......................................................................................... 55
Figure 4.12a – Classmark Books ......................................................................................................................... 55
Figure 4.12b – Classmark Books ......................................................................................................................... 56
Figure 4.13 – Student Registration..................................................................................................................... 57
Figure 4.14 – Teaching Staff Registration........................................................................................................... 57
Figure 4.15a – Book Transaction ........................................................................................................................ 58
Figure 4.15b – Book Transaction [ISSUE BOOK] ................................................................................................. 58
Figure 4.15c – Book Transaction [FINE PAYMENT] ............................................................................................ 59
Figure 4.16a – Fine Records ............................................................................................................................... 59
Figure 4.16b – Fine Records [STUDENT FINE RECORDS] .................................................................................... 60
Figure 4.16c – Fine Records [STAFF FINE RECORDS] .......................................................................................... 60
Figure 4.17 – Reservations ................................................................................................................................. 61
Figure 4.18 – Reminder ...................................................................................................................................... 61
Figure 4.19 – Book Registration ......................................................................................................................... 62
Figure 4.20 – View Stock .................................................................................................................................... 63
viii
Figure 4.21 – Notification ................................................................................................................................... 63
Figure 4.22a – Library Search ............................................................................................................................. 64
Figure 4.22b – Library Search [BOOK DETAILS] .................................................................................................. 65
Figure 4.23a – Library Page ................................................................................................................................ 65
Figure 4.23b – Library Collection........................................................................................................................ 66
Figure 4.24 – Classmark Books ........................................................................................................................... 66
Figure 4.25a – E-Book Registration .................................................................................................................... 67
Figure 4.25b – E-Book Registration .................................................................................................................... 67
ix
CHAPTER ONE
INTRODUCTION
1. In the academic sector, libraries provide information and support for members of an
institution or school in their pursuit of academic excellence. [Buena Vista University, 2013]
2. To meet up with the information needs of the public by providing materials or referral.
[Chelmsford Public Library, 2013]
3. Encourages the use of library materials and services for recreation. [Chelmsford Public
Library, 2013]
Libraries from Greece, Asian Minor and Syria were the first Roman libraries as a result of the
conquest in the first and second century. Early Christian libraries were in the residence of a
religious community called monasteries. From the ninth to fifteenth century, Arabs collected fine
1
libraries also the Jews and the Byzantines collected fine libraries during the medieval period.
[Infoplease. The Columbia Electronic Encyclopedia, 2013]
In the year 1732, a circulatory library called the Library Company of Philadelphia in the United States
was chartered on the initiative of Benjamin Franklin. The first tax-supporting library was opened at
Philadelphia in the year 1833, then the American Library Association was later formed in the year
1876. Traveling libraries and book mobiles began to take books to people living in the rural areas
in the early twentieth century. [Infoplease. The Columbia Electronic Encyclopedia, 2013]
By the end of the twentieth century, many resources were made available to library patrons in
electronic formats which could be easily accessed directly from home or work due to digital
revolution. [Infoplease. The Columbia Electronic Encyclopedia, 2013]
2
1.3 Problem Statement
Through thorough investigation in the university library, it was discovered that the existing
computerized library system is not fully implemented or deployed because of poor network
infrastructure and network connectivity. As a result the library is operated manually by a group
of people in different department. The present e-library system does not have a database to
store the details of claimed e-books, neither does it have an emailing system for providing user
notification or information services. Claimed e-books are stored in different folders for each
college and their respective departments. This method of storage is primitive and inefficient to
carry out smooth operations such as fetching the details of an e-book, adding and deleting e-
books, updating the details of an e-book and downloading e-books.
In the Readers Service Department of the library section, student and staff registration processes
are done by providing the student or staff a registration form to fill in order to make him/her a
member of the university library. This form of library transaction can be made more effective by
computerizing the process.
Manual system is also employed in the process of issuing and discharging books in the library. In
the case of issuing books, the staff searches for student’s or staff’s file among a huge pile of files,
then asks the student or staff for the number of copies left in the shelf for the book that is to be
issued. This system is time consuming and very unprofessional since a file system is employed in
storing library members’ data and secondly it is expected of the staff issuing a book to know the
number of copies left on the shelf for that particular book rather than asking the student or staff
the number of copies left in the shelf for a particular book. For effective and efficient operation,
library staff should have details of the books on shelf and off shelf at the click of a mouse button.
This implies computerizing the process.
In the Collection and Development Department books are registered by writing down the details
of each book such as the date the book was brought, accession number, author, title, publisher,
the year of publication, number of copies on both the accessions register [a document used in
maintaining the collection of books in the library] and bibliographic data worksheet [a data entry
worksheet that contains the necessary fields to enter the bibliographic data of each book] before
they are later registered into the system which uses Microsoft Excel worksheet. This form or
method of book registration is inefficient and a duplication of effort because the details of each
3
book are written down twice both on the accessions register and the bibliographic data
worksheet. Staffs from other departments take part in class marking the books brought to the
library due to the shortage of staffs in the Technical Department. From the library users’ point of
view the time taken to search for a book which may or may not be on the bookshelf or may not
be correctly ordered, is time consuming, thereby making the users frustrated and discouraged.
In the e-library section, the acquired e-books are classified into different categories using an
online catalogue. The e-books are later stored in different folders for each college and their
respective departments. For example e-books that are related to information technology are
stored in the COLICT [College of Information and Communication Technology] folder. This folder
contains two sub-folders, one for the Computer Science Department and the other for
Information Technology Department. Once the e-books are stored in their respective folders,
hyperlinks are generated manually for each e-book to enable users have access to them. This
method of transaction is time consuming, inefficient and primitive in a situation whereby 1500
e-books are acquired per session.
The reason for this research is to automate the manual processes carried out in the areas of
member registration, searching for existing member files, location of books in the library section,
registration of e-books, deleting e-books, updating details of existing e-books and providing easy
access for users in the e-library section. Failure to resolve the above stated problems in the
existing manual system may lead to a steady decrease of library usage and over-stretching of
existing staff. Thus leading to diminishing returns in library staff productivity.
1.4 Motivation
The loss of time and money engendered by the inefficient operations in most section of the
library, particularly in record keeping of both hard and soft copies of books, monitoring the stock
and performing daily book transactions such as issuing books, discharging books, reserving books
and downloading available e-books in both sections of the library motivated me in carrying out
this research.
4
1.5 Aim and Objectives
The aim of this project is to develop a multi-platform online library management system that can
both handle and manage the daily activities carried out in the library in an efficient and reliable
manner.
1.5.1 Objectives
The objectives of this project are listed below:
1. Develop a relational database to store book details (hard and soft), staff details and
student details.
2. Provision of a search functionality to enable users search for books efficiently and system
administrator search for users.
3. Provision of an e-book extraction functionality for extracting the details of the e-books in
pdf formats only.
5. Designing a user-friendly interface for the users to enable them navigate through the
system on the web.
1.6 Methodology
In order to provide solution in achieving the above objectives, using Bells University library as a
case study, the following will be carried out:
1. Carried out a detailed literature review to better understand current issues in library
researches, studies, their operations and implementation using modern technology.
2. Thorough study of Bells university library will be carried out through continuous visits and
observations of the library environment.
3. Design an Online Library Management System that can be used in Bells University of
Technology Library. The process of designing this system is listed below:
5
a. Design the user interface with different views using UML. The UML diagrams
produced will include: Class Diagram, Sequential Diagram, Activity Diagram and E-R
Model.
c. Stored procedures and LINQ [Language Integrated Query] will be used for easy
database transactions
such as INSERT, DELETE, UPDATE and SELECT.
2. The proposed system will automate the daily activities carried out in both sections of the
library. The benefits of a content management system would automatically scale the
application to fit various devices such as tablets, smartphones and smaller browser
windows, enable quick and easy page management and provide web application manager
easy access to shared resources.
6
1.8 Scope of Research
This project is primarily focused on improving the daily activities carried out at Bells University of
Technology [BUT] library. This improvement includes: computerizing the registration process of
books both in hard copy and soft copy [e-book], students and staffs; providing email notifications
services to all members (staff and students) of the library and providing easy means of monitoring
the library stock, leading to a more reliable and smooth system of operation.
7
CHAPTER TWO
LITERATURE REVIEW
2.0 Library
A library can be defined as a depository built to house a collection of books, literary documents,
or records for studying or borrowing. It can also be seen as a building containing collections of
information resources that can be easily accessed by the public for reference or borrowing.
[Oxford Dictionaries. Oxford University Press, 2013]
In [Grant-Ezeronye Grant, 2011], the library is divided into different housekeeping operations
which include:
1. Acquisition Control
2. Serials Control
4. Circulation Control
5. Web Cataloguing
6. Metadata Linking
8
2. Negotiating borrowing materials from other libraries [Wikipedia. Wikimedia Foundation,
2013]
4. Updating the information books and new version [Wikipedia. Wikimedia Foundation, 2013]
9
2.4 Library Management System (LMS)
This is a computer-based system that the functions carried out in the library such as acquisition,
cataloging, circulation, budget management and collection analysis. The heart of every library
management system is a relational database where all records or data related to the library and
users are stored. The number and names given to different subsystems [modules] in an LMS may
vary from one system to the other. Today’s modern LMS offers the various combinations of these
modules: Requisition, Acquisition, Cataloguing, Circulation, Serials Control, Enquiry, OPAC
[Online Public Access Catalogue], Inter library loans, Self-service stations, Federated search,
Mobile Library and more. [Wikipedia. Wikimedia Foundation, 2013]
Throughout the years, computer-based systems have been referred to by different names which
are:
10
2.5 Related Works
[Neelakandan et’al, 2010] implemented an automated library management system for the
University Department Library in the School of Chemistry Bharathidasan University. This work
was motivated by the inefficient and static [not dynamic or flexible] methods of carrying out the
daily activities in the library plus the great importance of applying modern techniques and
approaches for the efficient retrieval and dissemination of information and services for the
clientele.
The main objective of this study is to automate the Departmental Library of Chemistry by
implementing an automated system using Koha Library Integrated Open Source Software.
The methodology used in carrying out this research work involves integrating a free and open
source software with other third party applications such as: MySQL dump utility for MySQL
replication dumps, MySQL database etc. Monitoring the activities in the School of Chemistry
Library and taking stock of situations. Then performing physical examination of the books in order
to extract their bibliographic details which are later entered in an excel sheet.
The researchers successfully implemented the Koha Open Source Software but there were
limitations which occurred in the process of implementing the automated library management
system. These limitations include:
3. LACK OF FINANCIAL RESOURCES: The University support for all departments were limited
to books and racks in the library. As a result of this no fund was allotted to the automation
software package, which lead to the implementation of a free open software in the
chemistry library.
11
[Sivakumar, 2012] defines a library management system (LMS) as a multi-user, multi-tasking
integrated library management software that works either on a single machine or in a client-
server multi-platform environment designed for managing various activities of a library. Since a
library contains a very large collections of books and large number of members, it is impossible
for the librarian to manage the day to day activities manually.
In this study, the library management system consists of various modules and functionalities
which includes:
1. ACQUISITION
2. CATALOGING
3. CIRCULATION
5. SERIALS
6. ADMINISTRATION
7. STOCK VERIFICATION
9. ACCESSIONING
10. MASTERS
12. ADMINISTRATION
The table below is an overview of the functions carried out in each module.
MODULES FUNCTIONS
ACQUISITION Customization of acquisition reports,
Printing of acquisition reports and order list,
Creating a publisher directory,
Generating accounts reports; Balancing of
budget, Creating outstanding order report,
Generating items report
12
CATALOGING Creation of catalog on Author, Title, Class,
ISBN and Series,
Detect duplicate records,
Importing files downloaded from online
database, Editing cataloguing,
Providing Authority files such as Authors,
Subjects, Editors, Titles and Keywords,
Generation of Authority list
CIRCULATION Generation of overdue notices,
Loan period control,
Generating statistics of materials borrowed,
Checking the availability of an item,
Reserving books,
Maintaining a circulation list,
Online request,
Automated fine calculations and accounts,
Printing borrowers card
OPAC Search for bibliographic items in the library.
The search could be based on the Author,
Title, Class, ISBN and Series of a particular
material
SERIALS Subscriptions to new periodicals are carried
out in this module.
ADMINISTRATION Renewal of periodicals,
Generation of claims for the materials not
received, Generate Suppliers Directory,
Generating statistics of periodicals received,
Producing periodical budget and balance,
Approval and ordering,
Cataloging of journal articles, indexing and
abstraction,
Periodic documentation list
STOCK VERIFICATION Stock verification of display, on shelf,
checked out, lost, written off, damaged,
missing, reference and withdrawn.
It also includes reporting on the status of
items in the library.
INTER LIBRARY LOAN Borrowing and returning of books,
magazines, journals etc. from external
libraries
13
The name of the software package implemented in this work is LEARNSOFT. It is a digital library
management system that helps in carrying out day to day library activities such as the
acquisitioning of library materials [books journals, serials, etc.], cataloging, circulation control,
serials control etc.
MODULES FEATURES
CATALOGING Catalog any type of material such as Books,
Articles, Audio and Video Media, Serial
publications etc. This is done based on AACR2
(Anglo American Cataloguing Rules) standard.
CIRCULATION Member Information,
Registration card with member’s photograph
and barcode ID,
User specified code of member ID,
Subjects of interest for members,
Loans and reservations data retrieval by
borrower identification,
Inventory/Circulation status,
Physical stock verification,
Transaction logging,
Binding issues or receipts,
Shelf list,
Tracking fines and fees due,
Calendar master for maintaining holidays,
Rules based on computation of fines for
overdue items,
Deferred reservations to ensure availability of
items on shelf at specified future date,
Inter library loan monitoring system,
Prioritized reservation queue
ACQUISITION Proposal for acquisition,
14
Inquiry to book sellers/publishers,
Purchase orders (foreign / local),
Books on approval memos,
Purchase bills,
Payment details of purchase bills,
Credit notes,
Detailed information about vendors,
Multiple Currencies and conversion rates
SERIALS CONTROL Keeping track of receipts of issues, filing claims
for issues not received, preparing binding
orders, etc.
15
contains the values of actual expenses,
purchase orders raised, credit notes received
and the balances remaining from the total
amount, etc. for every budget head.
[Tan Chaur Chuan, 2010] points out that library management system is mainly used by librarian
and library administrator. The librarian is able to manage the following modules: Member
maintenance module; Book maintenance module and Book transaction module. [Tan Chaur
Chuan, 2010] also stated that the library management system allows user [librarian] to manage
the publisher as well as lost book module. The other type of user which is the admin level staff is
able to handle the staff module and view the report module.
The main objective of this work is to automate the daily transactions that take place in the library
in order to eliminate the traditional paper-work and to prevent the occurrence of missing records
or files. Bar Code and SMS technology were implemented in this work.
16
The methodology used in the development of the system is Waterfall Model. The waterfall model
is a software development model that consists of the following stages which are:
1. Requirement Analysis
2. System Design
3. Programming
4. System Testing
5. System Evaluation
[Tan Chaur Chuan, 2010] explains that the requirement analysis is a stage to gather the user
requirements such as functional requirements. The next stage is the system design where the
design of the user interface and database will take place. Programming stage is the next stage
after the system design and this stage has to do with coding. After the coding stage is the system
testing, this is carried out in order to minimize system bugs. System evaluation is the last and
final stage of the waterfall model which involves comparing it with an existing system.
In this work the library management system is divide into two: the online website and the library
system. The project scope of this work is the library system.
[Tan Chaur Chuan, 2010] divide the library system into different modules and functions which
are listed below:
MODULES FUNCTIONS
AUTHORIZATION AND AUTHENTICATION ID/Password Checking,
Password Recovery
MEMBER MAINTENANCE Add new member,
Edit member,
Print ID card,
Search member
BOOK MAINTENANCE Add new book,
Edit book information,
Generate barcode,
Search book
PUBLISHER MAINTENANCE Add new publisher,
Edit publisher information,
Search publisher
17
EMPLOYEE MAINTENANCE Add new employee,
Edit employee,
Search employee
BOOK TRANSACTION Rental Module,
Check Reservation,
Return Module,
Fine Module,
Lost Book Module
REPORT Transaction Report,
Top 10 Book Report,
Activity Log
[Tan Chaur Chuan, 2010] encountered some problems in the development process of the
project. These problems include:
1. The user requirements were not gathered from the end user in the planning stage of the
project. The requirements were gotten from the internet and opinions of supervisors
and friends.
2. The project did not start on time.
3. There was a problem with the logic of the program due to some errors in the user
interface design.
[Kumar, 2012] defines an online library as a system that maintains books in the server in any
format. It allows storing books, documents, audio and video files. The online library enables users
to search and open documents by giving a simple query. [Kumar, 2012] also defines an online
library management system as a system, which maintains books, documents and audio/video
files. In order to use this system one must be a member of the library. Library members or
registered users can search for books by giving a simple query. The online library uses internal
feedback from the user to improve search processes in every search. The system also makes use
of indexing to locate documents very fast in a search that is related to the query. This project was
motivated by the defects of the existing system which includes: using manual methods to record
the details of acquired library materials; low level of security; complexity arises in the
maintenance of library catalogue and arrangement of books to the catalogue and difficulty in
generating information reports.
18
The objectives of this project are: to provide users an easy way to register online and have
personal accounts; automate the daily activities that are carried in the library such as issuing
books, returning books, registering books, audio/video files, e-books, generating reports etc.
[Kumar, 2012] carried out an analysis of the existing system by gathering and interpreting the
facts, diagnosing the problems. A problem analysis was also carried out in order to have a clear
understanding of the needs of the users and what is expected of the automated system. The
analysis was done in the form of interviews, questionnaires and information from
documentation. The major problem encountered during the analysis is resolving how to organize
the information from documentation. System diagrams such as USE CASE Diagrams, Sequential
Diagrams, Collaboration Diagrams, Activity Diagrams, Class Diagrams, Deployment Diagrams and
E-R Diagrams were employed in the design of the system. Database design was also carried out.
Then the system was tested for errors and deployed on server.
[Tripathi and Srivastava, 2012] developed a library management system for the purpose of
monitoring and controlling the transactions in a library. The application provides facilities to
students or members in searching for required books and also allow the system administrator or
librarian to issue and return books plus creating and deleting members of the library. The
researchers defined system analysis as a detailed study of the various operations performed by
a system and their relationship within and outside of the system.
[Tripathi and Srivastava, 2012] carried out a detailed analysis of the existing system in a library
and discovered that daily library transactions are done manually. Such transactions include:
borrowing and returning of books, searching for existing members and books then finally
preparing a list of borrowed books and available books in the library. An automated system was
developed after the feasibility study to rectify the manual difficulties in managing the library. The
19
researchers specified the system requirements for running the application and these
requirements include: Windows 98 or NT 4.0 Operating Systems (software requirements) and
486 to 500 MHz microprocessor with a RAM ranging from 8 MB to 32MB (hardware
requirements).
The system implementation phase in the research work involves transforming the theoretical
design to a working system. [Tripathi and Srivastava, 2012] divided the implementation phase
into ten steps and in each step different web pages are developed. These pages include: Login
Page, Welcome Page, User Profile Page, Change Password, Search Page, Admin Login Page,
Admin Home Page, Book Transaction (Issue and Return) and Add Book Page. There was a limited
time framework in the development and implementation of the software.
[Adams et’al, 2007] developed a web-based library management system using Java Server Page
[JSP], servlets and JDBC. Entity-Relationship Model was used to design the database that will
store and organize the library’s data. The aim of this work is to implement a library management
system that has an internet-based graphic user interface which will enable the users to access
the system remotely.
[Adams et’al, 2007] carried out a requirement analysis to determine the needs or expectations
of the users and to have an understanding of how the library is being operated. The expectations
of the system include: The presence of a database to store information pertaining to its users,
media stored in the library and the physical location of other branches of the library; Keeping
track of the status of each media item; Registering users for the library card. In the process of
carrying out the analysis the researcher were able to outline the functions of each user of the
system, starting from the customers and then the librarian. For the purpose of this work the
media is limited to books and videos.
The researchers made use of the Entity-Relationship Model [E-R Model] to guide them in
designing the relational database of the library management system. The relational database is
normalized to a third normal form [3NF] in order to remove any form of redundancy. The user
interface of the system is done by considering how the database is accessed. This lead [Adams
et’al, 2007] to use the JDBC API [Java Development Connectivity API] in designing the interface
of the software.
20
In conclusion [Adams et’al, 2007] were able to design and implement the library management
system and a relational database to manage the system. There will be an improved account
management and search functionality for future development.
In [Grant-Ezeronye, 2011] a library is a collection of resources i.e. books and periodicals that
allows users to have access to its resources, make use of them and borrow them whenever they
want to. The researcher also defined the library as a collection that is maintained by an institution
and shared by people who cannot afford to purchase many books by themselves or would prefer
to make use of the items because they preferred to. The aim of this project is to develop an
automated system that will improve the readers’ desk operation at the University Library [Bells
University Library – Case Study]. Barcode reader and fingerprint scanner are used in the
development of the system.
The research methodology of [Grant-Ezeronye, 2011] involves studying the existing automated
system at the readers’ desk; reviewing existing literatures; making use of waterfall model for the
software development cycle; documentation and training of staff on the hardware and software
of the system. The scope of this project is limited to automating the operations carried out at the
readers’ desk department. These activities include: issuing and returning books, registration of
both users and books and the sign-in and sign-out processes of users.
The implementation of the barcode reader and fingerprint scanner was successful. This
implementation helps in making the operations to be done simultaneously thereby saving time
and reducing errors. The automated system is limited to a number of operations such as
registration, check-in/out of books, etc. performed at the readers’ desk. Other processes like
attending to request forms, non-members of the university, getting and arranging important
newspaper clips etc. as well as placing the system online in order to allow users view available
books on the shelf were not attended to.
[Grant-Ezeronye, 2011] recommended that the Bells University librarian to employ the use of the
software to the Circulation department of the library because the system will help to reduce the
error encountered in the manual labor involved in the library activities and also increases
operation speed. The research also
encourages students and staff to develop the system further due to its limitations.
21
According to [Maureen and Blessing, 2011] library automation has to do with the act of
computerizing the daily activities of the library system. These activities include: users and
materials registration, issuing and returning books, locating materials and calculating overdue
fines of defaulters. The researchers pointed out that the manual method of library management
system in most state universities for example Delta State University are prone to problems in the
following areas: Registration of users, Monitoring the stock of library materials, Waste of energy
in searching for a particular material.
The aim of this project work is to design an automated system that will help university libraries
to keep accurate track of the transactions done by storing the information about library users.
Then giving an accurate location of library material to ease the search of library users and keeping
track of all borrowed and returned books.
[Maureen and Blessing, 2011] reviewed different literatures related to their work, carried out a
system analysis of the existing library system to determine the setbacks it has. Design the system
through the use of structured flowcharts. [Maureen and Blessing, 2011] designed the database
using the SQL [Structured Query Language] Enterprise Manager. The tables design for the system
are:
[Maureen and Blessing, 2011] explains that there are various tasks carried out in the
implementation phase of the system, these tasks involve program development; testing and
debugging of the program; the acquisition and installation of the hardware and the training of
the library staff in order to be able to operate the system. The software architecture employed
in the development of the system is a 2-tier architecture. The system is then tested for bugs. This
involves two program testing which are: The Alpha testing and The Beta testing.
In conclusion the system [librarysoft] can monitor the operations of the library, speed up
searching processes, validating users and generating reports for the library staff to assist them in
managing the resources of the library.
22
[Bhupendra et’al, 2011] developed an online library management system for the purpose of
automating the operations carried in a library. The system provides facilities for users to aid them
in performing specific task with ease. Such facilities include: Stock Maintenance; Report
Generation and Transaction Entry. The scope of this project work is limited to institutions and
offices. The authors of this research work carried out a feasibility study of the present library
system in order to identify and analyze the drawbacks of the present system plus to understand
the flow of operation carried out in the library.
[Bhupendra et’al, 2011] divided the system into three components, the first component is
responsible for maintaining the stock of the library; the second component is responsible for
logging transactions and finally the third component is responsible for generating reports. Three
data tables were created during the development of the system which are: Members Table, Add
Book Table and Issue Table. E-R Model [Entity-Relation] and DFD [Data Flow Diagram] were
employed in designing the system.
[Bhupendra et’al, 2011] stated that in future new features can be added as required and it can
easily be implemented under various situations. The scope of the system involves: Extensibility
[making improvements on the system]; Reusability [reusable codes for maintenance and
upgrades]; Understandability [the source code can easily be understood by another programmer
other than the creator] and Cost-effectiveness [minimum cost is required to implement the
system].
In conclusion the system has a highly efficient GUI based component. The system was
implemented successfully and it meets all the requirements of the users.
[Nair, 2011] stated that a solution developed using the .NET technology was introduced to
improve the accuracy of the information handled in libraries. This solution helps the
administrator accomplish his tasks at ease and allows users to sign-up or sing-in easily since it is
an online library management system. From the administrator’s view the system helps him/her
to monitor the stock of the library, manage the library and other related information from his/her
desktop. From the users’ view the system them to sign-in and effectively search for books,
23
borrow or reserve books if they are available in the library. The details of both the library
materials and users are stored in the database.
The aim and objective of this project is to create a library management system which sorts the
administrators, staffs and students separately.
[Nair, 2011] pointed out that a feasibility study is carried out to determine whether or not a
project is worth doing. The researcher also mentioned that feasibility study is performed in order
to determine the feasibility of a project such that the content and recommendation of the study
will be used as a basis for deciding to proceed, postpone, or cancel the project. [Nair, 2011]
classified feasibility into the following types: Technical Feasibility, Operational Feasibility,
Economic Feasibility and Social Feasibility. Through thorough feasibility study of the present
system some problems were identified and analyzed. The system was divide into three
components which are:
1. Stock Maintenance
2. Transaction Entry
3. Report Generation
[Nair, 2011] made use of the following technologies to develop the library management system:
ASP.NET 2.0 in C#, Visual Web Developer Express Edition and SQL Server Express Edition. The
software development model used in the development cycle of the system is the Waterfall
Model. According to [Nair, 2011] the waterfall model consists of the following stages which are:
24
[Nair, 2011] explains that the requirement analysis and design stage has to do with establishing
the systems services and goals by consulting the end-users of the system. The next stage involves
establishing the overall system architecture which includes data structures and algorithm. In the
coding stage, the design is converted into a machine readable form. The final stage of the
software development cycle is the testing stage where the logical internals of the system are
tested to ensure that the system meets up with the user requirement and to uncover hidden
bugs.
In conclusion the system was developed using a very friendly GUI [Graphical User Interface] and
the implementation was a success.
25
CHAPTER THREE
SYSTEM DESIGN
2. PLATFORM INDEPENDENCE: The online system will be able to run on various software
platforms in terms of operating system such as Android, Windows and iOS. This feature
can be achieved by making use of a content management system [DotNetNuke for this
project] in order to automatically scale the application to run on the various stated
operating systems. Therefore the online system will be accessible through the web
browsers of laptops, smartphones, tablets and desktops.
3. CONVINIECE: Users can register into the system with their laptops, smartphones or
tablets without physically being in the library. Users should be able to login to the system
conveniently with their portable or mobile devices such as smartphones or tablets and
laptops. Users should be able to download e-books and reserve books online.
4. MAINTENANCE: The online system will be designed in such a way that the components
of the system will be developed in a modular form i.e. the components of the system will
be developed in modules so that the system can be maintained easily.
26
6. ACCURACY: The automated online system should be able to reduce errors to the
minimum.
28
3. POOLED ARCHITECTURE: This type of architecture is designed to enable efficient scaling
and growth of multiple workloads. System upgrade is done by replacing the system
components within a pool. System growth is done by adding system components to a
pool. Computing, storage and networks are in separate resource pools consisting of
component blocks and orchestrated separately [Themetisfiles, 2014]
29
Figure 3.1 - Four-Tier System Architecture Of Proposed System [Adapted From N. Sivakumar,
2009.]
30
3.5 Four-Tier System Architecture of Proposed System
The above system architecture shows how the system operates and functions. It consists of four
layers: The Business Object Layer, Presentation Layer, Business Logic Layer and Data Access
Layer. The business object layer [BOL] represents the stack holders of the system i.e. the people
that will make use of the system. The presentation layer [PL] represents the web pages or web
forms that act as an interface for the users to interact with the system. The business logic layer
[BLL] represents the logical operations carried out by the system, such operation includes:
calculation and validation operations. The data access layer [DAL] consists of data access
methods, data access components and a relational database which stores all the information
related to the library such as books [Hardcopy and Softcopy], library users with their properties
and functions.
31
Figure 3.2 - ER-Diagram for the Proposed Library Management System
32
Figure 3.3 – Use Case Diagram for the Proposed Library Management System
33
Figure 3.4 - Sequence Diagram for User Login
34
Figure 3.5 - Sequence Diagram for User Registration
35
Figure 3.6 - Sequence Diagram for Book Registration
36
Figure 3.7 - Sequence Diagram for Book Check-In And Check-Out
37
Figure 3.8 - Sequence Diagram for Searching
38
Figure 3.9 - Login Activity Diagram [STUDENT AND STAFF]
39
Figure 3.10 - Login Activity Diagram [CIRCULATION DESK STAFF]
40
Figure 3.11 - Login Activity Diagram [COLLECTION AND DEVELOPMENT STAFF]
41
Figure 3.12 - Book Registration Activity Diagram
42
Figure 3.13 - Registration Activity Diagram
43
Figure 3.14 - Search Activity Diagram
44
Figure 3.15 - Class Diagram
45
Figure 3.16 – Database Diagram
46
CHAPTER FOUR
SYSTEM IMPLEMENTATION
47
4.2 Login Page
The login page serves as an access point for existing users of the system. It allows users with
username and password to access the system and carry out operations that are relevant to the
user. It also allows new users to register for a username and password in order to gain access
into the system. The username uniquely identifies each user of the system and the password is
a string of characters used to authenticate the user or prove the identity of the user or access
approval to gain access to resources or the system.
In case of a mismatch in the username and password, the system would display an error
message “Login Failed. Please remember that passwords are case sensitive”.
48
4.3 Library Administrator
The library administrator holds the primary role of leadership in the library. In the library
management system, the library administrator is responsible for administering user roles to
different users of the system. The administrator is seen as a super user and has a better
privilege than regular library staff and users. Below is a list of pages that can be viewed by the
administrator:
1. USER MANAGEMENT
2. BOOK MANAGEMENT
3. TRANSACTION LOG
4. FINE PAYMENT
5. CLASSMARK BOOKS
USER MANAGEMENT: The user management page enables the library administrator to add new
users and manage or view existing users. At the point of registration, each new user [student,
teaching staff and library staff] is assigned a role to enable them carry out activities relevant to
their role.
49
Figure 4.4 – User Management [TEACHING STAFF REGISTRATION]
50
Figure 4.6 – User Management [LIST OF EXISTING MEMBERS]
51
BOOK MANAGEMENT: The book management page enables the library administrator to add
new books and view the library stock.
52
Figure 4.9b – Book Management [VIEW LIBRARY STOCK]
TRANSACTION LOG: The transaction log is a record of the activities carried out in the system,
these activities include: user registration, book registration, issuing, renewing and returning of
books, fine payment etc.
54
Figure 4.11c – Fine Records [STAFF FINE RECORDS]
CLASSMARK BOOKS: The classmark books page enables the library administrator to classmark
books.
55
Figure 4.12b – Classmark Books
56
REGISTRATION: The registration page enables the circulation desk staff to register new users.
57
BOOK TRANSACTION: The book transaction page enables the circulation desk staff to carry out
the following transactions: issue book, renew book, return/discharge book and fine payment.
58
Figure 4.15c – Book Transaction [FINE PAYMENT]
FINE PAYMENT: The fine payment page enables the circulation desk staff to view fine records.
59
Figure 4.16b – Fine Records [STUDENT FINE RECORDS]
60
RESERVATIONS: The reservations page enables the circulation desk staff to view reserved
books made by students and staff.
61
4.5 Acquisition Staff
The acquisition staff is responsible for registering books, monitoring the library stock and
sending notifications about new book arrivals to registered users. Below is a list of pages that
can be viewed by the acquisition staff:
1. ADD BOOKS
2. VIEW STOCK
3. NOTIFICATION
ADD BOOKS: The add books page enables the acquisition staff to register/add new books to the
system’s database.
62
VIEW STOCK: The view stock page allows the acquisition staff to view the library stock [list of
registered books].
NOTIFICATION: The notification page allows the acquisition staff to send notifications
concerning new collections of books to the mailboxes of registered users.
SEARCH: The search page allows the students and staff to search for books in the library by
title, subject and author.
64
Figure 4.22b – Library Search [BOOK DETAILS]
LIBRARY: The library page enables the students and staff to view the entire book collection in
the library.
66
4.8 E-Library Administrator
The e-library administrator is responsible for adding e-books.
67
CHAPTER FIVE
CONCLUSION AND RECOMMENDATION
5.1 Conclusion
What I have achieved in the course of this project is developing an online library management
system that can automated the activities carried out in the various sections of the library. The
implementation of an email service as stated on previous sections has been achieved. The system
is able to carry out automated task such as the deletion of user reservations and adding
defaulters to the defaulters list through the use of a windows service.
I have been able to study the current section of the readers’ service, collection and development
and technical departments plus the e-library. I also reviewed various literatures on different
library management systems. This project has been able to establish the use of a class library
from iTextSharp to extract the metadata of pdf files to ease the registration process of e-books
in the e-library. The module responsible for extracting e-book details was designed for pdf files
only. The major challenge in the process of extracting e-book details from pdf files is that not all
pdf files have a complete meta-data. As a result, the system will not be able to effectively extract
and store the details of the e-books.
The report generation feature of the system enables the library staff in the readers’ service
department and the collection and development department to generate reports in an excel
format. This enables them to possess a printed copy of the generated reports.
Lastly, this project has been able to show an architectural design [four-tier system architecture]
of an online library management system using Microsoft Enterprise Library for database
connectivity, iTextSharp Library for extraction pdf metadata and windows service to carry out
automated tasks. The differences between my work and that of [Grant-Ezeronye, 2011] is that
the developed system is a web-based management system. It possesses an emailing functionality
for sending notifications and reminders. It is capable of carrying out automated tasks through the
use of a windows service. The online library management system provides the functionality of
extracting pdf details from the meta-date of pdf files and is able to record the various transactions
or activities carried out in the library.
68
5.2 Recommendation
I hereby recommend the Bells University librarian to employ the use of this automated software
to the University Library. The system will reduce the errors encountered, and the manual process
involved in the library activities; and also to increase operation speed.
The online library management system only automates the activities carried out in the readers’
service department, collection and development department, technical department and the e-
library. Processes like attending to non-members of the university, getting and arranging
important newspaper clips and keeping record of serials could not be attended to.
I encounter the university to try and encourage the students and staff to carry out further
research in the development of library automated systems that can overcome the limitation of
the present online library management system. Upgrade approach of technology should be
recognized, acknowledged and accepted since the Library resides in a University of Technology.
Students in lower levels can also improve on this system hereby making it their final year project.
69
References
1. Ashutosh Tripathi and Ashish Srivastava, 2012. “Online Library Management System”.
IOSR JOURNAL OF ENGINEERING (IOSRJEN). Pg. 180 – 186
2. Akazue Maureen and Ojeme Blessing, 2011. “Design of an Automated Library
Management System for State Universities in Nigeria”. ASIAN JOURNAL OF
INFORMATION TECHNOLOGY. Pg. 335 – 340
3. AllWords.com, 2013. “Definition of System Design” [Online]:
http://www.allwords.com/word-systems+design.html
4. Bhupendra, Shraddha Panwar and Vijay Vaishnav, 2011. “Online Library Management
System”. Project Report, November 2011.
5. Bijesh Nair, 2011. “Online Library System”. Final year project report of Masters of
Computer Application in G.V School of Engineering and Technology. April 2011.
6. Buena Vista University (2013), “Library Mission” [Online]:
http://www.bvu.edu/library/about_us/purpose.dot
7. Chelmsford Public Library (2013), “Objectives and Purposes of the Library” [Online]:
http://www.chelmsfordlibrary.org/library_info/policies/objectives.html
8. Dictionary.com, 2013. “Online Public Access Catalog” [Online]:
http://dictionary.reference.com/browse/Online+Public+Access+Catalog?s=t
9. Darren Adams, Sergey Begun, Andrew Fail, Shawn Halger and Franklin Lee, 2007.
“Library Management System: Design and Implementation”. Final year project, April
2007.
10. Dubberly Design Office, 2013. “System Design” [Online]:
http://www.dubberly.com/articles/what-is-systems-design.html
11. Flightsystems, 2013. “Purpose of System Design” [Online]:
http://flightsystems.org/system_design_definition.htm
12. Grant-Ezeronye G. C., 2011. “Development of a Library’s Readers’ Desk Management
System”. Final year project submitted to the Department of Computer Science, June
2011.
13. HRSA (Health Resources and Services Administration), 2014. “System Implementation”
[Online]:
http://www.hrsa.gov/healthit/toolbox/HealthITAdoptiontoolbox/SystemImplementatio
n/
14. Infoplease. The Columbia Electronic Encyclopedia, 6th Ed. - Columbia University Press
(2013), “Library: Evolution” [Online]:
http://www.infoplease.com/encyclopedia/entertainment/library-evolution.html
70
15. M. Satish Kumar, 2012. “Online Library”. Final year project, July 2012.
16. N. Sivakumar, 2012. “International Library Management Systems”. INTERNATIONAL
JOURNAL OF LIBRARY AND INFORMATION SCIENCE RESEARCH AND DEVELOPMENT. Pg.
35 - 47
17. Neelakandan. B, Duraisekar. S, Balasubramani.R, Srinivasa Ragavan.S (2010),
“Implementation of Automated Library Management System in the School of Chemistry
Bharathidasan University using Koha Open Source Software”. INTERNATIONAL JOURNAL
OF APPLIED ENGINEERING RESEARCH, DINDIGUL. Pg. 149 - 167
18. N.p., “System Implementation”, 2014. [Online]:
http://web.simmons.edu/~benoit/lis486/SystemsImplementation.html
19. N.p., “System Implementation”, 2014. [Online]:
http://www.uky.edu/~dsianita/695A&D/lecture5.html
20. Oxford Dictionaries, 2013. “Definition of Library in English”, Oxford University Press.
[Online]: http://oxforddictionaries.com/definition/english/library
21. Tan Chaur Chuan, 2010. “Library Management System”. Final year project submitted to
the Department of School of Arts and Science, Campbell University, U.S.A
22. Wikipedia. Wikimedia Foundation (2013), “Library” [Online]:
http://en.wikipedia.org/wiki/Library
71
APPENDIX 1: SOURCE CODE
USER REGISTRATION
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using DotNetNuke.Entities.Modules;
using DotNetNuke.Entities.Users;
using DotNetNuke.Common;
using System.Data;
using BEL;
using BLL;
using Utilities;
using DotNetNuke.Security.Membership;
using DotNetNuke.Security;
using DotNetNuke.Security.Roles;
using System.Net.Mail;
using System.IO;
using System.Drawing;
if(ctrl is System.Web.UI.WebControls.Image)
{
if (((System.Web.UI.WebControls.Image)ctrl).ID.Equals("profilePicture"))
{
((System.Web.UI.WebControls.Image)ctrl).ImageUrl =
"~/images/no_avatar.gif";
}
}
ResetControls(ctrl.Controls);
}
}
catch (Exception ex)
{
ErrorMgt.WriteLog(ex);
ClosePanels();
messagePanel.Visible = true;
msgLb.ForeColor = System.Drawing.Color.Red;
msgLb.Text = "An error occured. Please contact administrator if error persists";
}
}
studentCollegeDropDown.DataSource =
(DataTable)UserBLL.LoadCollege().ReturnObject;
studentCollegeDropDown.DataTextField = "college_name";
studentCollegeDropDown.DataValueField = "college_id";
studentCollegeDropDown.DataBind();
staffCollegeDropDown.DataSource = (DataTable)UserBLL.LoadCollege().ReturnObject;
staffCollegeDropDown.DataTextField = "college_name";
staffCollegeDropDown.DataValueField = "college_id";
staffCollegeDropDown.DataBind();
}
else
{
if (Session["imagepath"] == null)
{
profilePicture.ImageUrl = "~/images/no_avatar.gif";
}
else
{
profilePicture.ImageUrl = Session["imagepath"].ToString();
}
}
}
Session.Clear();
Session.Abandon();
switch (result.Status)
{
case 100:
CreatePortalUser();
ClosePanels();
messagePanel.Visible = true;
generalDetailsPanel.Visible = true;
studentPanel.Visible = true;
msgLb.ForeColor = System.Drawing.Color.Green;
msgLb.Text = "Registration Completed successfully !!!"+ "</br>" +
Session["msg"].ToString();
TransactionLog.Instance.WriteLog(10, dorLabel.Text,
DateTime.Now.ToShortTimeString(), UserInfo.Username, UserInfo.DisplayName,
UserBEL.Instance.first_name, null, null, null);
break;
case -100:
ClosePanels();
messagePanel.Visible = true;
generalDetailsPanel.Visible = true;
studentPanel.Visible = true;
msgLb.ForeColor = System.Drawing.Color.Red;
msgLb.Text = "User ID already in use !!!";
ResetControls(Page.Controls);
ResetDropDownList();
break;
case -99:
ClosePanels();
messagePanel.Visible = true;
generalDetailsPanel.Visible = true;
studentPanel.Visible = true;
msgLb.ForeColor = System.Drawing.Color.Red;
msgLb.Text = "An error occured will processing request. Contact
Administrator"+ "</br>" + Session["msg"].ToString();;
ResetControls(Page.Controls);
ResetDropDownList();
break;
}
}
catch (Exception ex)
{
ErrorMgt.WriteLog(ex);
ClosePanels();
messagePanel.Visible = true;
generalDetailsPanel.Visible = true;
msgLb.ForeColor = System.Drawing.Color.Red;
msgLb.Text = "An error occured will processing request. Contact Administrator";
}
switch (result.Status)
{
case 100:
CreatePortalUser();
ClosePanels();
messagePanel.Visible = true;
generalDetailsPanel.Visible = true;
msgLb.ForeColor = System.Drawing.Color.Green;
msgLb.Text = "Registration Completed successfully !!!";
TransactionLog.Instance.WriteLog(10, dorLabel.Text,
(DateTime.Now.TimeOfDay).ToString(), UserInfo.Username, UserInfo.DisplayName,
UserBEL.Instance.first_name, null, null, null);
break;
case -100:
ClosePanels();
messagePanel.Visible = true;
generalDetailsPanel.Visible = true;
staffPanel.Visible = true;
msgLb.ForeColor = System.Drawing.Color.Red;
msgLb.Text = "User ID already in use !!!";
ResetControls(Page.Controls);
ResetDropDownList();
break;
case -99:
ClosePanels();
messagePanel.Visible = true;
generalDetailsPanel.Visible = true;
staffPanel.Visible = true;
msgLb.ForeColor = System.Drawing.Color.Red;
msgLb.Text = "An error occured will processing request. Contact
Administrator";
ResetControls(Page.Controls);
ResetDropDownList();
break;
}
}
catch (Exception ex)
{
ErrorMgt.WriteLog(ex);
ClosePanels();
messagePanel.Visible = true;
generalDetailsPanel.Visible = true;
msgLb.ForeColor = System.Drawing.Color.Red;
msgLb.Text = "An error occured will processing request. Contact Administrator";
}
}
//User Category
protected void userCategoryDropDown_SelectedIndexChanged(object sender, EventArgs e)
{
if (userCategoryDropDown.SelectedItem.Text == "---Select---")
{
ClosePanels();
generalDetailsPanel.Visible = true;
}
else if (userCategoryDropDown.SelectedItem.Text == "Student")
{
ClosePanels();
generalDetailsPanel.Visible = true;
studentPanel.Visible = true;
firstNameValidator.ValidationGroup = "StudentDetails";
middleNameValidator.ValidationGroup = "StudentDetails";
lastNameValidator.ValidationGroup = "StudentDetails";
addressValidator.ValidationGroup = "StudentDetails";
emailValidator.ValidationGroup = "StudentDetails";
homePhoneNumberValidator.ValidationGroup = "StudentDetails";
personalPhoneNumberValidator.ValidationGroup = "StudentDetails";
dorLabel.Text = DateTime.Today.ToString("dd/MM/yyyy");
}
else if (userCategoryDropDown.SelectedItem.Text == "Teaching Staff")
{
ClosePanels();
generalDetailsPanel.Visible = true;
staffPanel.Visible = true;
firstNameValidator.ValidationGroup = "StaffDetails";
middleNameValidator.ValidationGroup = "StaffDetails";
lastNameValidator.ValidationGroup = "StaffDetails";
addressValidator.ValidationGroup = "StaffDetails";
emailValidator.ValidationGroup = "StaffDetails";
homePhoneNumberValidator.ValidationGroup = "StaffDetails";
personalPhoneNumberValidator.ValidationGroup = "StaffDetails";
staffDorLb.Text = DateTime.Today.ToString("dd/MM/yyyy");
}
}
//Resetting Controls
protected void studentResetBtn_Click(object sender, EventArgs e)
{
ResetControls(Page.Controls);
ResetDropDownList();
Session.Clear();
Session.Abandon();
}
//Resetting Controls
protected void staffResetBtn_Click(object sender, EventArgs e)
{
ResetControls(Page.Controls);
ResetDropDownList();
Session.Clear();
Session.Abandon();
}
objUser.FirstName = firstNameTextBox.Text;
objUser.LastName = lastNameTextBox.Text;
objUser.IsSuperUser = false;
objUser.Username = (userCategoryDropDown.SelectedValue == "1") ?
matricNumberTextBox.Text : staffIDTextBox.Text;
objUser.DisplayName = firstNameTextBox.Text + " " + lastNameTextBox.Text;
objUser.Email = emailTextBox.Text;
objUser.PortalID = this.PortalId;
objUser.Membership.Password = password;
objUser.Membership.UpdatePassword = true; //enables users to change their password
objUser.Membership.Approved = true;
objUser.Membership.IsOnLine = false;
if (mailStatus)
{
Session["msg"] = " Mail sent successfully !!!";
}
else
{
Session["msg"] = " Failed to send mail. Please check your network connectivity
!!!";
}
}
BOOK REGISTRATION
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Drawing;
using System.Web.UI.WebControls;
using DotNetNuke.Entities.Modules;
using DotNetNuke.Entities.Users;
using BEL;
using BLL;
using Utilities;
using DotNetNuke.Common;
using System.Data;
using System.IO;
if(ctrl is System.Web.UI.WebControls.Image)
{
if (((System.Web.UI.WebControls.Image)ctrl).ID.Equals("bookThumbNail"))
{
((System.Web.UI.WebControls.Image)ctrl).ImageUrl = "~/book_thumbnail/no
thumbnail.png";
}
}
ResetControls(ctrl.Controls);
}
}
disciplineDropDown.DataSource = (DataTable)BookBLL.LoadDiscipline().ReturnObject;
disciplineDropDown.DataTextField = "discipline";
disciplineDropDown.DataValueField = "discipline_id";
disciplineDropDown.DataBind();
}
}
if (acquisitionDropDown.SelectedIndex != 0)
{
BookBEL.Instance.price = null;
}
else
{
BookBEL.Instance.price = Convert.ToInt32(priceTextBox.Text);
}
BookBEL.Instance.cataloger = userLiteral.Text;
BookBEL.Instance.thumbnail = (bookThumbNail.ImageUrl == "~/book_thumbnail/no
thumbnail.png") ? "~/book_thumbnail/no image.png" : bookThumbNail.ImageUrl;
BookBEL.Instance.isbn = isbnTextBox.Text;
BookBEL.Instance.book_description = descriptionTextBox.Text;
BookBEL.Instance.discipline_id =
Convert.ToInt32(disciplineDropDown.SelectedValue);
BookBEL.Instance.subDiscipline_id =
Convert.ToInt32(subDisciplineDropDown.SelectedValue);
BookBEL.Instance.book_type = Convert.ToInt32(bookTypeDropDown.SelectedValue);
BookBEL.Instance.book_location =
Convert.ToInt32(bookLocationDropDown.SelectedValue);
BookBEL.Instance.book_label = barcodeTextBox.Text;
BookBEL.Instance.vetted_by = vetTextBox.Text;
switch(result.Status)
{
case 100:
msgPanel.Visible = true;
msgLabel.ForeColor = Color.Green;
msgLabel.Text = "Book registration completed successfully";
TransactionLog.Instance.WriteLog(20, DateTime.Now.ToString("dd/MM/yyyy"),
DateTime.Now.ToShortTimeString(), UserInfo.Username,
UserInfo.DisplayName, null, BookBEL.Instance.book_title, null, null);
Session.Clear();
Session.Abandon();
break;
case -100:
msgPanel.Visible = true;
msgLabel.ForeColor = Color.Red;
msgLabel.Text = "Book title already exist";
break;
case -99:
msgPanel.Visible = true;
msgLabel.ForeColor = Color.Red;
msgLabel.Text = "An error occured will processing request. Contact
Administrator !!!";
break;
}
}
catch(Exception ex)
{
ErrorMgt.WriteLog(ex);
msgPanel.Visible = true;
msgLabel.ForeColor = Color.Red;
msgLabel.Text = "An error occured while registering the book. Contact
Administrator !!!";
}
}
END