Troli Report Final Sem
Troli Report Final Sem
On
TROLI (CITY-LIVE)
developed at
Training is the first step in the practical field from where one learns how to apply theory
principles for this the practical purposes .I would like to express my deep and sincere gratitude to
my supervision Mr. Ayush Jaiswal (Cosmo info solution), who gave me his full support and
encouraged me to work in an inno vative and challenging project for education field. His wide
knowledge and logical thinking gave me right direction all the time.
I wish to place on record my whole hearted gratitude to Ratan Rajan Srivastava for making
available every facility that I required during the course of my project. Also, I am extremely
thankful to you Sir, for extending your kind guidance , words , friendly advice and guidance at
every step, his presence was a welcome sight throughout the project.
I am also deeply indebted to my College HOD Prof. Gaurav Mishra for their constant presence,
supervision and advice paid off in the culmination of this project and has helped me a great deal
with this project with their constant words of encouragement and advice.
Prabhav Saxena
CONTENTS :-
1. INTRODUCTION
• About Organization
• Objective of Project
2. SYSTEM STUDY
• Objective
• Problem Statement
• Identification of need
• Preliminary investigation
• Project Planning
• Coding
• Feasibility study
• DFD
• ERD
3. DATA DICTIONARY
• List of Tables
• Structure of tables
4. INPUT FORMS
5. OUTPUT FORMS
6. CONCLUSION
7. BIBLIOGRAPHY
INTRODUCTION
ABOUT ORGANIZATION -:
An ISO Certified 9001-2015 Cosmo info Solution which is best known for its brilliant and
Cosmo info solution was found in the year 2015 in Lucknow. Cosmo info Solution provide high-
industrial level summer training to budding graduates to bridge the gap between graduates and
their aspirational dream jobs. Industries essential like Android, ASP.NET, Big data, Java SE,
MVC, PHP and Python. These courses are precisely penned down and updated to current
industrial requirements. We have large integration with the organisations which are standardized
with the I.T industry, in the light of Google Partner, ISO and MSME.
ABOUT PROJECT-:
• Troli (City –Live) is a python-based project that helps the tourists in exploring and
planning to visit and explore places according to city and kind of place.
• Initially, it takes the information about the city, the user wants to visit. Then it
will show the list of places of attractions of that place from which the user can
• The aim to develop the project is to produce a tourist guide , the application is to
be user friendly tourist guide over web which is available globally over any type
of devices.
• To change the traditional techniques of human guides by using printed maps and
written information. The traditional technique might create problems while
• To avoid getting services from people which we need to engage as guides. The
website creation. The language, which has code words and syntax just like any other language,
is relatively easy to comprehend and, as time goes on, increasingly powerful in what it allows
someone to create. HTML continues to evolve to meet the demands and requirements of the
Internet under the guise of the World Wide Web Consortium, the organization that designs and
maintains the language; for instance. HyperText Markup Language (HTML) is the set
of markup symbols or codes inserted into a file intended for display on the Internet. The
markup tells web browsers how to display a web page's words and images.Each individual
piece markup code (which would fall between "<" and ">" characters) is referred to as an
element, though many people also refer to it as a tag. Some elements come in pairs that
simple design language intended to simplify the process of making web pages presentable.
CSS handles the look and feel part of a web page. Using CSS, you can control the color of the
text, the style of fonts, the spacing between paragraphs, how columns are sized and laid out,
what background images or colors are used, layout designs,variations in display for different
devices and screen sizes as well as a variety of other effects.CSS is easy to learn and
understand but it provides powerful control over the presentation of an HTML document.
JQUERY - JQuery is a javascrpt library that allows web developers to add extra
functionality to their websites. It is open source and provided for free under the MIT license.
In recent years, JQuery has become the most popular JavaScript library used in web
development .To implement JQuery, a web developer simply needs to reference the JQuery
JavaScript file within the HTML of a webpage. Some websites host their own local copy of
jQuery, while others simply reference the library hosted by Google or the jQuery server. For
example, a webpage may load the JQuery library using the following line within the <head>
BOOTSTRAP - Bootstrap is the most popular front end framework in the recent time. It is
sleek, intuitive, and powerful mobile first front-end framework for faster and easier web
JAVA SCRIPT - JavaScript (JS) is a scripting language, primarily used on the Web. It is
used to enhance HTML pages and is commonly found embedded in HTML code. JavaScript is
an interpreted language. Thus, it doesn't need to be compiled. JavaScript renders web pages in
an interactive and dynamic fashion. This allowing the pages to react to events, exhibit special
effects, accept variable text, validate data, create cookies, detect a user’s browser, etc.
dynamic semantics. Its high-level built-in data structures, combined with dynamic typing and
dynamic binding, make it very attractive for Rapid Application Development, as well as for
use as a scripting or glue language to connect existing components together. Python's simple,
easy to learn syntax emphasizes readability and therefore reduces the cost of program
maintenance. Python supports modules and packages, which encourages program modularity
and code reuse. The Python interpreter and the extensive standard library are available in
source or binary form without charge for all major platforms, and can be freely distributed.
Often, programmers fall in love with Python because of the increased productivity it provides.
fast. Debugging Python programs is easy: a bug or bad input will never cause a segmentation
fault. Instead, when the interpreter discovers an error, it raises an exception. When the
program doesn't catch the exception, the interpreter prints a stack trace.
Django Template Language -This document explains the language syntax of the Django
template system. If you’re looking for a more technical perspective on how it works and how
to extend it, see The Django template language: for Python programmers. Django’s template
language is designed to strike a balance between power and ease. It’s designed to feel
comfortable to those used to working with HTML..A template is a text file. It can generate any
PgAdmin 4-: PgAdmin is the leading Open-Source management tool for Postgres, the
world’s most advanced Open-Source database. PgAdmin 4 is designed to meet the needs of
both novice and experienced Postgres users alike, providing a powerful graphical interface that
Visual Studio Code - : Visual Studio Code is a free source code editor developed my
Microsoft. It feels much more lightweight than traditional IDEs, yet its extensions make it
SOFTWARE REQUIREMENTS
SERVER
CLIENT
DEVELOPER
Framework: Django
HARDWARE REQUIREMENT
SERVER
RAM: 2GB
HDD : 80GB
CLIENT
Processor : i3 or above
RAM :2 GB
HDD:40GB
DEVELOPER
RAM :4 GB
HDD: 40GB
SYSTEM STUDY
System study is, therefore, the process of gathering and interpreting fans, diagnosing
what are problems and what are requirements that proposed system should meet.
The aim to develop the project is to produce a tourist guide, the application is to be user
friendly tourist guide over web which is available globally over any type of devices.
To change the traditional techniques of human guides by using printed maps and written
information. The traditional technique might create problems while decision making due
To avoid getting services from people which we need to engage as guides. The
The proposed system is a web based application and maintains a centralized repository of
Troli (City live) give a detailed insight into the amazing diversity of Travelling It is our
innovative approach and personalized service that has built enduring relationships with
Our website is different as there may be many websites similar like ours but either they
are selling their packages or requires money to display details about particular location
we want our travellers to easily search and continue their travelling, That makes our
Existing System
The present system are inadequate in providing information and advices to the agencies
and the customers about tour plans. Often agencies are compelled to rely on local
information sources and count on their own experience regarding time and cost. Through
phone call they have to get information. There are some problems which are existing in
In the present system a customer has to approach various agencies to find details of
A customer may not get the desired information from these offices and often the
• The main problem is that when people visit a new city, they consult a travel guide to
explore. Guide may be area specific so tourist needs to search for a new guide every
time.
• Tourist guide may guide the visitor in the language of their choice which may or may
• Hardly availability of full information and costs much time even for few information.
• Tourism without a proper guideline can put the life of tourists in danger sometime. So,
Requirement specification provides the developer and the customer with the means to
assess quality once software is built. The requirement analysis task is a process of
developer to refine the system allocation and build models of the data, functional and
behavioral domains that will be treated by system. After detailed study of the
identification of needs, following are the requirements of the project that includes:
• New system should provide direct saving of the webpages in the user’s account.
• New system should provide a facility to keep reminders which can be received
• New system should provide a means to store and edit personal notes.
• New system should also provide other features like search, edit, delete.
PRELIMINARY INVESTIGATION
The purpose of the preliminary investigation is to evaluate project request and determine
the feasibility of the system. The preliminary investigation starts as soon as the problem
not.
The information during the preliminary investigation was gathered through Online
Observation. During online observation I analyzed similar websites which are related to
Planning phase, plan is made and strategies are set, taking into consideration the
Planning provides direction, unifying frame work, performance standards, and helps to
An alternative which is not only consistent with its goals and concept but also one
Decision on a Plan
SOFTWARE REQUIREMENT SPECIFICATIONS
(SRS)
SRS is a document that completely describe what the proposed system should do without
describing how the software will do it. The SRS is the medium which the client and the
Advantages of SRS:
An SRS establishes the basis for agreement between the client and the supplier on what
Characteristics of an SRS:
1. Correct
2. Complete
3. Unambiguous
4. Verifiable
5. Consistent
7. Modifiable
8. Traceable
Requirement Specifications:
Functional requirements are those requirements which affect the system and make the
system working. It describes what the system should do. Functional requirements of the
system are:
• User can change the password or mobile number any time, if required.
• User can search, save, delete, share, & access the webpages and notes after login.
Administrator Section:
This section can be accessed by providing administrator ID and password. In this section, the
admin can view the user information. Admin can view all the reviews and feedbacks sent to
User section:
Users can register and create their own profiles. After login users can perform different
Non-Functional Requirement:
The system should be 24/7 available. The customers do not want restrictions on the times
Reliability-
The system should guarantee the reliability to run on any platform or machine and
password protected.
Scalability-
Since the project is planning to increase its customer base, scalability should be
assured by the system. The best efforts that can be made consist of enabling multiple
Usability-
The users of the system are not computer experts, and hence particular attention
should be paid to usability. Thus, the web interface should be clear, concise, and easy
to use.
SOFTWARE ENGINEERING PARADIGM
the process layer. Software engineering processes the glue that holds the technology
layers together and enables ratios and timely development of computer software. Process
defines a framework for a set of key process areas that must be established for effective
Software engineering methods provide the technical how-to for building software.
Methods encompass a broad array of tasks that include requirements analysis, design,
program construction, testing and support. Software engineering tools provide automated
or semi-automated support for the process and the methods. When tools are integrated so
that information created by one tool can be used by another tool, a system for the support
Modular approach is used for developing the proposed system. A system is considered
implemented separately and a change to one component has minimal impact on other
Top down
Bottom up
Both approaches have some merits and demerits. For this system top-down approach has
been used. It starts by identifying the major components of the system, decomposing
them into their lower-level components and iterating until the derived level of detail is
achieved
Starting from an abstract design, in each step the design is refined to a more concrete
level, until we reach a level where no more refinement is needed and the design can be
system are clearly known and the system development is from scratch.
A bottom-up approach starts with designing the most basic or primitive components and
The life-cycle paradigm demands a systematic, sequential approach to software development that
begins at the system level and progresses through analysis, design, coding, testing and
Analysis:
System Engineenng and Analysis Establishing requirements for all system elements and then
understand the nature of the program to be built, the software engineer (analyst) must understand
Design:
Software design is actually a multi-step process that focuses on four distinct attributes of the
program: data structure, software architecture, procedural detail and interface charactenzation. The
Coding:
The design must be translated into a machine-readable form. The coding step performs this task.
Testing:
Maintenance
Software will undoubtedly undergo change after it is delivered to the customer. Software
maintenance reapplies each of the preceding life-cycle steps to an existing program rather than a
new one. Typical phases in the waterfall model are analysis and specification, design, coding,
It works only for systems designed to automate an existing manual system. For absolutely new
system determining the requirement is difficult as the user himself does not know them advance
Freezing the requirements means freezing the hardware. A large project might take few years to
complete, by the time the product is available the hardware become obsolete.
It assumes that requirements are frozen before the rest of the development can proceed. In some
situation it might be desirable to develop a part of the system completely, and later enhance the
system in phases. This is often done for the software products that are developed not necessarily
for a client, but for general marketing in which case the requirements are likely to be determined
Test case design focuses on a set of techniques for the creation of test cases that
meet overall testing objectives. In test case design phase, the engineer creates a
series of test cases that are intended to "demolish" the software that has been
built.
prepared a number of test cases and input data from the developed project and
Test Case I
All the fields are entered with the correct values in the Registration form on the
website. On clicking Sign up, all the data must be stored in Accounts table. The
test is successful.
Test Case II
In the login form, entering correct username with wrong password must display
In the user panel, searching the webpage with two letters must display all the
webpages containing those two letters together in the heading. The test is
successful
Test Case IV
In the user panel, while setting an alert, if the date or time is being set
for the expired time, an error must pop-up displaying to choose correct
Black box testing is designed to uncover errors. They are used to demonstrate
that software functions are operations, that input in properly accepted and output
black box examines some fundamental aspects of a system with little regard for
details. Providing test cases that exercises specific set of conditions and/or
loops, tests logical paths through the software. The "state of program" may be
testing is to verify and validate the various work products viz. units, integrated
In software development phase and error can be injected at any stage during
the delivery of higher quality software products, more satisfied users, lower
error.
• A good test case is one that has a high probability of finding undiscovered
error.
Our objective is to design test cases that systematically uncover different classes
of errors and do so with a minimum amount of time and effort. This process has
two parts:
and verifying if it meets the quality criteria. Data collected is used to make
The quality of a product or item can be achieved by ensuring that the product
various stages.
Verification: Have we built the software right (i.e., does it match the
Validation: Have we built the right software (i.e., is this what the customer
Types of Testing
Unit Testing: Starting from the bottom the first test level in Unit Testing
independent tester should do this, but in practice the developer usually does it,
as they are the only people who understand how a component works. The
problem with a component is that it performs only a small part of the
system, which may not have been bult yet. To overcome this, the developer
either builds, or uses special software to trick the component into believing it is
Interface Testing: As the components are constructed and tested, they are then
linked together to check if they work with each other. It is fact that two
components that have passed all their tests, when connected to each other
produce one new component which may be fall of faults. These tests can be
the components are doing but on how they communicate with each other. The
tests are organized to check all the interfaces, until all the components have
been built and interfaced to each other producing the whole system.
System Testing: Once the entire system has been built then it has to be tested
In essence System testing is not about checking the individual parts of the
component. System testing can involve number of specialist types of tests to see
if all the functional and non-functional requirements have been met. In addition
to functional requirements these may include the following types of testing for
"Requirements". It is similar to system testing in that the whole system is checked but
the important difference is the change in focus: System testing checks that the system
that was specified has been delivered. Acceptance testing checks that the system
delivers what was requested. The customer and not the developer should always do
acceptance testing. The customer knows what is required from the system to achieve
value in the business and is the only person qualified to make that judgment. The forms
of tests may follow those in system testing, but at all times they are informed by the
business needs.
Release Testing: Even if a system meets all its requirements, there is still a case to be
answered that will it benefit the business? Release testing is about seeing if the new or
changed system will work in the existing business environment. Mainly this means the
In ideal worlds, all programmers would be so skilled and attentive to detail that
they would write bug-free code. Unfortunately, we do not live in an ideal world.
As such, debugging, or tracking down the source of errors and erroneous result,
is an important task that all developers need to perform before they allow end-
user to use their applications. Some techniques for reducing the number of bugs
in code up front.
Syntax error:
These errors occur when code breaks the rule of the language, such as an
the coder to them and will not allow to interpret the program until it is corrected
The indentation error can occur when the spaces or tabs are not placed properly.
There will not be an issue if the interpreter does not find any issues with the
spaces or tabs. If there is an error due to indentation, it will come in between the
These errors occur in code that is correct according to rules of the interpreter,
good example is code that execute in a loop but never exists the loop, either
because the loop depends on the variable whose values was expected to be
increment the loop counter. Another category of errors in this area includes
requesting a field from a dataset, there is no way to tell if the field actually
exists at compile time. These bugs are harder to detect and are one type of
running error.
Logic error:
Logic errors are like semantic errors logic errors are runtime error. That is, they
occur while the program is running. But unlike semantic errors, logic errors do
not cause the application to crash or hang. Logic error results in unexpected
variables name that happens to match another declared variable in the program.
Computer systems face a number of security threats. One of the basic threats is
data loss, which means that parts of a database can no longer be retrieved. This
could be the result of physical damage to the storage medium (like fire or water
sensitive information, and it could be very harmful if it were to fall in the wrong
hands. Imagine someone getting a hold of your social security number, date of
methods to obtain data from databases, which they may use for personal gain or
to harm others.
the capability to replicate itself and hide inside other computer files.
from theft, corruption and other types of damage, while allowing the
Security
Integrity
Privacy
Confidentiality
damage from a defined threat. In contrast data security is the protection against
eavesdropping and wire-tapping. In contrast data integrity make sure that data
do not differ from their original form and have not been accidentally or
information they are willing to share with or accept from others and how the
for protection.
Control Measures: After system security risks have been evaluated, the next
step is to select the measures that are internal and external to the facility. The
Access Control: Various steps are taken to control access to a computer facility.
however should balance with the sensitivity of the data being manipulated. One
problem with audit controls is that it is difficult to prove their worth until the
system has been violated or a company officer imprisoned. For this reason,
audibility must be supported at all management levels and planned into every
system.
CODING
Home
models.py
cities=(("LKO","Lucknow"),("Goa","Goa"))
class City(models.Model):
cityy=models.CharField(max_length=250,default='India')
def __str__(self):
return self.cityy
class Category(models.Model):
cat_name = models.CharField(max_length=250)
cover_pic = models.FileField(upload_to="cat_pics")
city=models.ForeignKey(City, on_delete=models.CASCADE)
description = models.TextField()
added_on =models.DateTimeField(auto_now_add=True)
def __str__(self):
class Ser(models.Model):
name=models.CharField(max_length=50)
service_provider=models.ForeignKey(User, on_delete=models.CASCADE)
desc=models.TextField()
cate=models.ForeignKey(Category, on_delete=models.CASCADE)
price=models.IntegerField()
image=models.ImageField(upload_to="pics",default="default/no.jpg")
class cart(models.Model):
user=models.ForeignKey(User, on_delete=models.CASCADE)
quantity=models.IntegerField()
status=models.BooleanField(default=False)
service=models.ForeignKey(Ser, on_delete=models.CASCADE)
added_on =models.DateTimeField(auto_now_add=True,null=True)
update_on = models.DateTimeField(auto_now=True,null=True)
def __str__(self):
return "New item added by " + self.user.username
class Contact(models.Model):
user=models.ForeignKey(User, on_delete=models.CASCADE)
phone=models.BigIntegerField(null=True,unique=True)
content=models.TextField()
timestamp=models.DateTimeField(auto_now_add=True, blank=True)
def __str__(self):
class Order(models.Model):
cust_id = models.ForeignKey(User,on_delete=models.CASCADE)
cart_ids = models.CharField(max_length=250)
product_ids = models.CharField(max_length=250)
invoice_id = models.CharField(max_length=250)
status = models.BooleanField(default=False)
processed_on = models.DateTimeField(auto_now_add=True)
def __str__(self):
return self.cust_id.username
Home
views.py
def index(request):
dic={}
ct=City.objects.all()
dic['ct']=ct
if request.method == 'POST':
cid=request.POST['cty']
cat = Category.objects.filter(city=cid).order_by("cat_name")
dic['categ']=cat
else:
cat=Category.objects.all().order_by("cat_name")
dic['categ']=cat
def about(request):
def ourtrip(request):
def localtravel(request):
def register(request):
cat = Category.objects.get(id=cid)
tour = Ser.objects.filter(cate=cat).order_by("id")
def serve(request):
se = Ser.objects.filter().order_by("cate")
ca = Category.objects.all()
def search(request):
if request.method == "GET":
s = request.GET["copy"]
sev = Ser.objects.filter(name__icontains=s).order_by("name")
#aser = Profile.objects.filter(user__id=request.user.id)
ad={}
aser=Category.objects.all()
ad["aser"]=aser
provider=get_object_or_404(User,id=request.user.id)
if request.method == "POST":
name = request.POST["ser_name"]
c=request.POST["categ"]
price = request.POST["price"]
description = request.POST["desc"]
#service_provider = Profile.objects.get(user__id=request.user.id)
category=Category.objects.get(id=c)
desc=description)
ap.save()
if "ser_img" in request.FILES:
imgs = request.FILES["ser_img"]
ap.image = imgs
ap.save()
def dashboard(request):
aser = Profile.objects.filter(user__id=request.user.id)
if len(aser) > 0:
data = Profile.objects.get(user__id=request.user.id)
def addtocart(request):
dic = {}
it = cart.objects.filter(user__id=request.user.id, status="False")
dic["item"] = it
if request.user.is_authenticated:
if request.method == "POST":
sid = request.POST["atc"]
quant = request.POST["qty"]
is_exist = cart.objects.filter(
service__id=sid, user__id=request.user.id, status="False")
if len(is_exist) > 0:
else:
crt.save()
else:
def contact(request):
us = Contact.objects.filter(user__id=request.user.id)
if request.method == "POST":
phone = request.POST['phone']
content = request.POST['content']
print(phone, content)
else:
us = get_object_or_404(User, id=request.user.id)
contact.save()
return redirect("index")
def get_cart_data(request):
sale, quantity = 0, 0
for i in item:
sale += float(i.service.price)*i.quantity
quantity = int(i.quantity)
resp = {"quan": quantity, "tot": sale}
return JsonResponse(resp)
def remove_ser(request):
if "delete_cart" in request.GET:
id = request.GET["delete_cart"]
cartobj.delete()
return HttpResponse(1)
def feedback(request):
mfb = {}
ab = Contact.objects.filter(user__id=request.user.id)
mfb["ab"] = ab
if len(ab) > 0:
data = Contact.objects.get(user__id=request.user.id)
mfb["data"] = data
fb = Contact.objects.filter(user__id=request.user.id)
mfb["fb"] = fb
return render(request, "profile.html", mfb)
def process_payment(request):
seri = ""
amt = 0
s_id = ""
cart_id = ""
for i in item:
seri += str(i.service.name)+"/n"
amt += i.service.price/75
inv += str(i.id)
s_id += str(i.service.id)+","
cart_id += str(i.id)+","
paypal_dict = {
'business': settings.PAYPAL_RECEIVER_EMAIL,
'amount': str(amt),
'item_name': seri,
'invoice': inv,
'currency_code': 'USD',
'notify_url': 'http://{}{}'.format("127.0.0.1:8000",reverse('paypal-ipn')),
'return_url': 'http://{}{}'.format("127.0.0.1:8000",reverse('successPay')),
'cancel_return': 'http://{}{}'.format("127.0.0.1:8000",reverse('cancelPay')),
usr=User.objects.get(username=request.user.username)
ord=Order(cust_id=usr,cart_ids=cart_id, product_ids=s_id)
ord.save()
ord.invoice_id=str(ord.id)+inv
ord.save()
form=PayPalPaymentsForm(initial=paypal_dict)
def cancelPay(request):
def successPay(request):
if "order_id" in request.session:
order_id=request.session["order_id"]
ord_obj=get_object_or_404(Order, id=order_id)
ord_obj.status=True
ord_obj.save()
for i in ord_obj.cart_ids.split(",")[:-1]:
cart_object=cart.objects.get(id=i)
cart_object.status=True
cart_object.save()
urlpatterns=[
path("",views.index,name="index"),
path("innertravel",views.innertravel, name="innertravel"),
path("contact",views.contact, name="contact"),
path("register",views.register, name="register"),
path("Service/<int:cid>",views.Service, name="Service"),
path("serve",views.serve,name="serve"),
path("search",views.search,name="search"),
path("addser",views.addser,name="addser"),
path("dashboard",views.dashboard,name="dashboard"),
path("addtocart",views.addtocart,name="addtocart"),
path("remove_ser",views.remove_ser,name="remove_ser"),
path("get_cart_data",views.get_cart_data,name="get_cart_data"),
path("process_payment",views.process_payment,name="process_payment"),
path("successPay",views.successPay,name="successPay"),
path("cancelPay",views.cancelPay,name="cancelPay"),
Register
views.py
from register.models import Profile
def register(request):
if(request.method == "POST"):
first_name = request.POST['first_name']
last_name = request.POST['lname']
email = request.POST['email']
user_name = request.POST['user_name']
password = request.POST['password']
confirm_password = request.POST['confirm_password']
con = request.POST["con"]
gst=request.POST["gst"]
regbus=request.POST["regib"]
if (password == confirm_password):
if User.objects.filter(username=user_name).exists():
return redirect("about")
else:
user = User.objects.create_user(
if "staff" in request.POST:
user.is_staff=True
user.save()
user2.save()
return redirect('login')
def userreg(request):
if(request.method == "POST"):
first_name = request.POST['first_name']
last_name = request.POST['lname']
email = request.POST['email']
user_name = request.POST['user_name']
password = request.POST['password']
confirm_password = request.POST['confirm_password']
con = request.POST["con"]
if (password == confirm_password):
if User.objects.filter(username=user_name).exists():
messages.info(request, "Oops! Username already taken.")
return redirect("about")
else:
user.save()
user2.save()
return redirect('login')
def login(request):
if(request.method == "POST"):
usrname = request.POST["usrname"]
password = request.POST["password"]
if logger != None:
auth.login(request, logger)
return redirect("index")
else:
return redirect("login")
else:
auth.logout(request)
return redirect("index")
def profile(request):
display = {}
prof = Profile.objects.filter(user_id=request.user.id)
if len(prof) > 0:
dis = Profile.objects.get(user_id=request.user.id)
display["dis"] = dis
def update_profile(request):
display = {}
prof = Profile.objects.filter(user_id=request.user.id)
if len(prof) > 0:
dis = Profile.objects.get(user_id=request.user.id)
display["dis"] = dis
if request.method == "POST":
fname = request.POST['fname']
lname = request.POST['lname']
email = request.POST['email']
uname = request.POST['uname']
phn = request.POST['phn']
aadhar = request.POST['aadhar']
user = User.objects.get(id=request.user.id)
user.username = uname
user.first_name = fname
user.last_name = lname
user.email = email
user.save()
dis.aadhar_id = aadhar
dis.contact_no = phn
dis.save()
if "img" in request.FILES:
pic = request.FILES["img"]
dis.profile_pic = pic
dis.save()
display["s"] = "changesave"
return redirect("profile")
]
Index Page
{% load static %}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
communities.">
scale=1, shrink-to-fit=no">
<meta name="msapplication-navbutton-color"
content="#ed3072">
<meta name="apple-mobile-web-app-status-bar-style"
content="#ed3072">
'css/style.css' %}">
'css/responsive.css' %}">
______________________________________-->
<!--[if lt IE 9]>
<script
src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<script src="vendor/html5shiv.js"></script>
<script src="vendor/respond.js"></script>
<![endif]-->
</head>
<body>
<div class="main-page-wrapper">
<!--
===================================================
Loading Transition
==================================================== -->
<section>
<div id="preloader">
preloader">
<div class="animation-preloader">
<div class="txt-loading">
<span data-text-
preloader="T" class="letters-loading">
T
</span>
<span data-text-
preloader="R" class="letters-loading">
</span>
<span data-text-
preloader="O" class="letters-loading">
</span>
<span data-text-
preloader="L" class="letters-loading">
</span>
<span data-text-
preloader="I" class="letters-loading">
</span>
</div>
</div>
</div>
</div>
</section>
<!--
=============================================
==============================================
-->
<div class="theme-main-menu">
<div class="top-heaader">
<div class="clearfix">
<div class="">
items-center justify-content-between">
<li class="call-us
77</a></p></li>
<li>
<ul
class="social-icon d-sm-flex">
aria-hidden="true"></i></a></li>
<li><a href="#"><i class="fa fa-instagram"
aria-hidden="true"></i></a></li>
aria-hidden="true"></i></a></li>
aria-hidden="true"></i></a></li>
aria-hidden="true"></i></a></li>
</ul>
</li>
<li class="language-
switcher">
<div
class="dropdown">
toggle="dropdown">
En
</button>
<div
class="dropdown-menu">
<ul class="ct-language__dropdown">
lang-select">NORWEGIAN</a></li>
</ul>
</div>
</div>
</li>
</ul>
</div>
</div>
<div class="main-header">
justify-content-between">
<nav id="mega-menu-holder"
class="navbar navbar-expand-lg order-lg-2">
<div class="nav-
container">
<button
label="Toggle navigation">
<span></span>
</button>
<div class="collapse
navbar-collapse" id="navbarSupportedContent">
<ul
class="navbar-nav">
<li
class="nav-item active">
<a
class="nav-link" href="index-2.html">Home</a>
</li>
<li
class="nav-item dropdown-holder">
<a
class="sub-menu">
Us</a></li>
<li
concepts</a></li>
</ul>
</li>
<li
class="nav-item dropdown-holder">
<a
<ul
class="sub-menu">
Guide</a></li>
<li
class="sub-nav-item"><a href="travel-with-local-inner.html">Guide
Details</a></li>
<li
class="sub-nav-item"><a href="resource-library.html">Inspiration
library</a></li>
</ul>
</li>
<li class="nav-
item dropdown-holder">
<a
class="nav-link" href="#">Discover</a>
<ul
class="sub-menu">
<li
<li
<li
class="sub-dropdown-holder sub-nav-item">
<a href="#">Africa</a>
<ul class="sub-sub-menu">
india.html">Uganda</a></li>
india.html">Malawi</a></li>
india.html">Zambia</a></li>
india.html">Botswana</a></li>
india.html">Kenya</a></li>
india.html">Tanzania</a></li>
</ul>
</li>
<li
class="sub-dropdown-holder sub-nav-item">
<a href="#">Asia</a>
<ul class="sub-sub-menu">
india.html">India</a></li>
india.html">Indonesia</a></li>
india.html">Thailand</a></li>
Philippines</a></li>
</ul>
</li>
</ul>
</li>
<li class="nav-
item dropdown-holder">
<a
class="nav-link" href="#">Feature</a>
<ul
class="sub-menu">
<li
<li
class="sub-nav-item"><a href="experience.html">Experiences</a></li>
<li
class="sub-nav-item"><a href="cart.html">Cart</a></li>
<li
class="sub-nav-item"><a href="check-out.html">Checkout</a></li>
<li
class="sub-nav-item"><a href="article-submission.html">Article
Submission</a></li>
<li
class="sub-nav-item"><a href="press.html">Press</a></li>
</ul>
</li>
<li class="nav-
item dropdown-holder">
<a
<ul
class="sub-menu">
<li
<li class="sub-nav-item"><a
href="contribution.html">Contribution</a></li>
Stories</a></li>
</ul>
</li>
<li class="nav-
item">
<a
class="nav-link" href="contact.html">Contact</a>
</li>
</ul>
</div>
>
order-lg-3">
<li class="search-form">
<div
class="dropdown">
<button
<i
</button>
<div
class="dropdown-menu dropdown-menu-right">
</form>
</div>
</div>
</li>
<li><a href="contact.html"
class="theme-main-button">Travel Now</a></li>
</ul>
</div>
</div>
<!--
=============================================
==============================================
-->
justify-content-center" style="background-image:
url(static/images/banners/homepage_hero.jpg);">
<div class="container">
<div class="row">
<h1 data-aos="fade-
</div>
</div>
</div>
<div class="search-filter">
<div class="container">
<div class="row">
<div class="col-xl-11 m-
auto">
<div class="main-
wrapper">
<form
action="#">
<div
class="row">
<div class="dropdown-holder">
<select class="theme-select-menu">
<option value="">Destination</option>
<optgroup label="ASIA">
<option value="India">India</option>
<option
value="indonesia">indonesia</option>
<option
value="the philippines">the philippines</option>
<option
value="thailand">thailand</option>
</optgroup>
<optgroup label="AFRICA">
<option
value="malawi">malawi</option>
<option
value="botswana">botswana</option>
<option value="kenya">kenya</option>
<option
value="tanzania">tanzania</option>
<option value="zambia">zambia</option>
<option
value="zimbabwe">zimbabwe</option>
</optgroup>
<option
value="beach vibes">beach vibes</option>
<option
value="safari & wildlife">safari & wildlife</option>
<option
value="backpacking">backpacking</option>
<option
value="live like a local">live like a local</option>
<option
value="mountains">mountains</option>
<option
value="food & culture">food & culture</option>
<option
value="adrenaline">adrenaline</option>
<option value="fitness">fitness</option>
<option
value="honeymoon">honeymoon</option>
</optgroup>
</select>
</div>
</div>
class="input-box">
</div>
<div class="people-count">
<div class="people-input">
</div>
<div class="count-dropdown">
<label for="adult">Adults</label>
<label for="children">Children</label>
<input type="number" name="children"
<div class="apply-pepole">Apply</div>
</div>
</div>
</div>
</div>
</form>
wrapper -->
</div>
</div>
</div>
<!--
=============================================
Local Experience
==============================================
-->
80 sm-pt-150">
<div class="container">
<div class="row">
<div class="block-style-one
<h4>LOCAL
COMMITMENT</h4>
<p>It is a long
</div>
</div>
aos="fade-up" data-aos-delay="100">
<div class="block-style-one
<h4>ECO-
FRIENDLY EXPERIENCES</h4>
<p>It is a long
</div>
aos="fade-up" data-aos-delay="200">
<div class="block-style-one
<h4>ETHICAL
AWARENESS</h4>
<p>It is a long
</div>
</div>
</div>
<a href="travel-with-local.html"
class="theme-main-button lg">travels witl us</a>
</div>
=============================================
Trip Finder
==============================================
-->
<div class="container">
mb-40">
for?</h2>
<div class="trip-finder-slider">
<div class="item">
<div class="media-meta-
<a href="#"
</a>
</div>
</div>
<div class="item">
<div class="media-meta-
<a href="#"
<h3>AFRIKA</h3>
</a>
</div>
</div>
<div class="item">
<div class="media-meta-
<a href="#"
<h3>ASIA</h3>
</a>
</div>
</div>
<div class="item">
<div class="media-meta-
<a href="#"
<h3>BEACH VIBES </h3>
</a>
</div>
</div>
<div class="item">
<div class="media-meta-
<a href="#"
<h3>ADRENALINE</h3>
</a>
</div>
</div>
<div class="item">
<div class="media-meta-
<h3>HONEYMOON</h3>
</a>
</div>
</div>
<div class="item">
<div class="media-meta-
<a href="#"
<h3>FITNESS</h3>
</a>
</div>
</div>
<div class="item">
<div class="media-meta-
<a href="#"
<h3>BACKPACING</h3>
</a>
</div>
</div>
<div class="item">
<div class="media-meta-
<a href="#"
<h3>LIKE
A LOCAL</h3>
</a>
</div>
</div>
<a href="experience.html"
</div>
</div>
=============================================
Trip Concept
==============================================
-->
image: url(static/images/banners/homepage_footer.jpg);">
pb-40">
<div class="container">
center">
<h2>Unique Trip
Concepts</h2>
travel</h5>
<div class="row">
<div class="col-lg-6
m-auto">
<p>Contrary
to popular belief, Lorem Ipsum is not simply random text. It has roots in a
</div>
<div class="row">
sm-6" data-aos="fade-up">
<div class="block-
<img
<h4>ORIENTATION</h4>
<p>Sed ut
<a
trips</a>
</div>
</div>
<div class="block-
style-two text-center mt-70 md-mt-50">
<img
<h4>Events</h4>
<p>Sed ut
<a
trips</a>
</div>
</div>
<div class="block-
<img
<h4>DREAM JOURNEY</h4>
<p>Sed ut
trips</a>
</div>
</div>
<div class="block-
<img
<h4>LOCAL ENTIRE</h4>
<p>Sed ut
<a
trips</a>
</div>
</div>
</div>
</div>
<!--
=============================================
Trip Explorer
==============================================
-->
<div class="container">
mb-20 md-m0">
Us</h2>
<div class="row">
data-aos="fade-up">
<div class="block-style-
three mt-40">
<div class="img-
box" style="background-image:
url(static/images/assets/tour_expo_1.jpg);"></div>
<div class="text-
box">
<h4><a
<p>A
<div
<a
<div
class="price">
From <strong>$1,600</strong>
</div>
</div>
box -->
</div>
data-aos="fade-up" data-aos-delay="100">
<div class="block-style-
three mt-40">
<div class="img-
box" style="background-image:
url(static/images/assets/tour_expo_2.jpg);"></div>
<div class="text-
box">
<div
class="tag">Hot Trip</div>
<h4><a
<p>A
wonderful introduction to the beauty and wildlife of Kenya, perfect for a first
<div
<a
<div
class="price">
From <strong>$1,100</strong>
</div>
</div>
box -->
three -->
</div>
data-aos="fade-up" data-aos-delay="200">
<div class="block-style-
three mt-40">
<div class="img-
box" style="background-image:
url(static/images/assets/tour_expo_3.jpg);"></div>
<div class="text-
box">
<h4><a
<p>An
introduction to the Harbour City, the Outback and Great Barrier Reef</p>
<div
<a
<div
class="price">
From <strong>$1,200</strong>
</div>
</div>
box -->
three -->
</div>
data-aos="fade-up">
<div class="block-style-
three mt-40">
<div class="img-
box" style="background-image:
url(static/images/assets/tour_expo_4.jpg);"></div>
<div class="text-
box">
<h4><a
<p>A
<div
<a
<div
class="price">
From <strong>$1,300</strong>
</div>
</div>
box -->
three -->
</div>
data-aos="fade-up" data-aos-delay="100">
<div class="block-style-
three mt-40">
<div class="img-
box" style="background-image:
url(static/images/assets/tour_expo_5.jpg);"></div>
<div class="text-
box">
<h4><a
<p>A
wonderful introduction to the beauty and wildlife of Kenya, perfect for a first
<div
<a
<div
class="price">
From <strong>$1,500</strong>
</div>
</div>
three -->
</div>
data-aos="fade-up" data-aos-delay="200">
<div class="block-style-
three mt-40">
<div class="img-
box" style="background-image:
url(static/images/assets/tour_expo_6.jpg);"></div>
<div class="text-
box">
<div
class="tag">Hot Trip</div>
<h4><a
<p>An
introduction to the Harbour City, the Outback and Great Barrier Reef</p>
<div
<a
class="price">
From <strong>$800</strong>
</div>
</div>
box -->
three -->
</div>
</div>
<a href="experience.html"
</div>
</div>
<!--
=============================================
Local Ambassadors
==============================================
-->
<div class="container">
mb-40">
<div class="row">
md-10">
sint occaecati cupiditate non provident, similique sunt in culpa qui officia
</div>
</div>
<div class="ambassadors-slider">
<div class="item">
<div class="ambassadors-
block" style="background-image:
url(static/images/ambassadors/Ambassador_1.jpg);">
<div class="text d-
flex align-items-end">
<div>
<h4>Virat Kholi</h4>
<p>India</p>
<a
</div>
</div>
block -->
</div>
<div class="item">
<div class="ambassadors-
block" style="background-image:
url(static/images/ambassadors/Ambassador_2.jpg);">
<div class="text d-
flex align-items-end">
<div>
<h4>Bostone Huda</h4>
<p>Zambia</p>
<a
</div>
</div>
block -->
</div>
<div class="item">
<div class="ambassadors-
block" style="background-image:
url(static/images/ambassadors/Ambassador_3.jpg);">
<div class="text d-
flex align-items-end">
<div>
<h4>Polika Syle</h4>
<p>Zimbabwe</p>
<a
href="#">Travel With me</a>
</div>
</div>
block -->
</div>
<div class="item">
<div class="ambassadors-
block" style="background-image:
url(static/images/ambassadors/Ambassador_4.jpg);">
<div class="text d-
flex align-items-end">
<div>
<h4>Masakadzza</h4>
<p>Botswana</p>
<a
</div>
</div>
block -->
</div>
<div class="item">
<div class="ambassadors-
block" style="background-image:
url(static/images/ambassadors/Ambassador_5.jpg);">
<div class="text d-
flex align-items-end">
<div>
<p>Thailand</p>
<a
</div>
</div>
block -->
</div>
<div class="item">
<div class="ambassadors-
block" style="background-image:
url(static/images/ambassadors/Ambassador_6.jpg);">
<div class="text d-
flex align-items-end">
<div>
<h4>Keraon Lopaz</h4>
<p>Uganda</p>
<a
</div>
</div>
block -->
</div>
</div>
</div>
=============================================
Apps Downloader
==============================================
-->
style="background-image: url(static/images/banners/india.jpg);">
pb-40">
<div class="container">
center">
<div class="text">
<div
class="theme-title-one mb-15">
</div>
<p
class="pb-30">Get the app to become part of the fastest growing local travel
<div
class="d-flex">
<a
alt=""></a>
<a
'images/assets/Download_on_the_App_Store_Badge_US-
</div>
</div>
</div>
</div>
</div>
</div>
</div> <!-- /.overlay -->
<!--
=============================================
Blog
==============================================
-->
<div class="container">
mb-40">
<div class="row">
md-10">
hand, we denounce with righteous indignation and dislike men who are so
blinded by desire.</p>
</div>
</div>
<div class="trip-finder-slider">
<div class="item">
<div class="media-meta-
<a href="blog-
<h3>Pure
</a>
</div>
</div>
<div class="item">
<div class="media-meta-
<a href="blog-
<h3>All
</a>
</div>
</div>
<div class="item">
<div class="media-meta-
<a href="blog-
<h3>City
Spotlight: Philadelphia</h3>
</a>
</div>
</div>
<a href="our-blog.html"
</div>
</div>
=============================================
Feature Banner
==============================================
-->
style="background-image:
url(static/images/banners/homepage_footer.jpg);">
pb-80">
ADVENTURE?</h2>
<a href="contact.html"
</div>
<!--
=============================================
Footer
==============================================
-->
<footer class="theme-footer">
<div class="container">
<div class="row">
footer-contact">
<ul class="logo-group d-
flex align-items-center">
<li><a href="index-
</ul>
<ul>
<li class="d-flex
align-items-center">
<i class="fa
fa-mobile" aria-hidden="true"></i>
<a href="tel:
+9454686907">+94 54 68 69 07</a>
</li>
<li class="d-flex
align-items-center">
<i class="fa
fa-envelope-o" aria-hidden="true"></i>
<a
href="mailto:[email protected]">[email protected]</a>
</li>
<li class="d-flex
align-items-center">
<i class="fa
fa-commenting-o" aria-hidden="true"></i>
<a
</li>
</ul>
</div>
footer-list">
<div class="row">
<div class="col-6">
<ul>
<li><a href="#">FAQ</a></li>
</ul>
</div>
<div class="col-6">
<ul>
<li><a href="#">cookies</a></li>
</ul>
</div>
</div>
newsletter">
<h5>Newsletter</h5>
<input type="text"
<button
class="theme-main-button">Subscribe</button>
</form>
<ul class="social-icon d-
flex">
<li><a href="#"><i
<li><a href="#"><i
<li><a href="#"><i
<li><a href="#"><i
<li><a href="#"><i
</div>
</div>
<div class="bottom-footer">
<div class="container">
<p class="text-center">©
</div>
</div>
%}"></script>
%}"></script>
%}"></script>
%}"></script>
<script src="vendor/jquery.countTo.js"></script>
%}"></script>
%}"></script>
%}"></script>
'vendor/daterangepicker/daterangepicker.js' %}"></script>
%}"></script>
</body>
</html>
FEASIBILITY STUDY
A feasibility study is a test system proposal according to its workability, impact
• What are the user's demonstrable needs and how does he need them?
It is the deal for the user who requires quick access to the result of the analysis
feasibility analysis:
• Technical feasibility
• Operational feasibility
• Economic feasibility
Technical Feasibility:
will successfully satisfy the user requirement. The technical needs of the system
given time
i. Response time under certain conditions
Operational Feasibility:
Operational feasibility is dependent upon the human resources available for the
project. It also concerns self with whether or not the system will operate and
support a new system? Also, social factors i.e., how the organizational changes
will affect the working lives of those affected by the system. self with whether
or not the system will operate and work once it is implemented. Do the current
work practices and procedures support a new system? Also, social factors i.e.,
how the organizational changes will affect the working lives of those affected
by the system.
Economic Feasibility:
Economic analysis is the most frequently used method for evaluating the
procedure is to determine the benefits and savings that are expected from a
candidate system and compare them with costs. If benefits outweigh costs, then
used to represent a system in terms of the input data into the system, various process
carried on these data and the output data generated by the system.
The main reason why the DFD technique is so popular is because the fact that the
system and the data flow among the functions. Starting with a set of high-level
functions that a system performs, a DFD model hierarchy represents various sub-
functions.
I. DATA FLOW -:
A line with an arrow represents data flows. The arrow shows the direction of flow of
data. The name of the data appears next to the line. Data move in a specific Direction
II. PROCESS -:
A Circle is used to despite a process. Processes are numbered and given a name. The
process depicts the operations which are to be performed. The entity requests some
operations to the process and the process responds for the same by communicating
Processes may store or retrieve data from a data store. If an arrow points to the store,
it indicates operation of writing in the store. If it points away from the store, it
IV. ENTITY :-
An entity is and real world object which is distinguishable from other entity and
can be easily identifiable example student, teacher, etc. External Entities are
represented by the rectangle, and are outside the system, such as venders or
customers wit that the system interacts. The designers have no control over them.
ADMIN
ENTITY RELATIONSHIP DIAGRAM
ER Diagram stands for Entity Relationship Diagram, also known as ERD is a diagram
that displays the relationship of entity sets stored in a database. In other words, ER
diagrams help to explain the logical structure of databases. ER diagrams are created
contain different symbols that use rectangles to represent entities, ovals to define
Lines: It links attributes to entity types and entity types with other relationship types
Relational database engines enable much more description of data models and provide
• Nullability of columns,
might want to collect that are not supported by database engines. It all depends on the
• Source,
• List of values,
• String formats
LIST OF TABLES
User table
Category table
Service table
Register table
Contact table
Cart table
STRUCTURE OF TABLE
User Table -:
Category Table
Service table
Register Table
Contact Table
Cart Table
INPUT FORMS
User Registration form-
Contact form
Bill generation form
OUTPUT FORMS
Index page after inputing login credentials of customer and staff respectively.
Output form of Admin Panel where we add categories and services etc.
After adding Category and services in Admin
Payment form – It will redirect to paypal for payment process of items added in cart.
ABOUT US ------
CONCLUSION
Troli (City-live) provides easy way to booking and provide suggestions to visit places of
attraction in the city. This project is designed in such a way that any further
enhancements can be done with ease. The main purpose of this project is to provide a
convenient way for customer to book hotels and provide a suggestion to visit places near
you.
We will make an easier way to searching places to visit and booking hotels.
It becomes convenient for users to visit our website rather than visiting agency.
Saves time and money and provides a customized view of the tour to users.The website is
easy and feasible to use. It automates the manual booking, payment and customization
process. The main aim to provide best travelling services to the customers and travel
agents. We have developed categorized way from which they can search on site platform
where a tourist can find their tour places according to their choices. It also helps to
promote responsible and interesting tourism so that people can enjoy their holidays at
their favorable places. This system also helps to develop tourism with different cultures
Websites
• https://docs.djangoproject.com
• www.django.com
• https://developer.mozilla.org/en-US/docs/Learn/Server-side/Django/Introduction
• https://documentation.help/pgAdmin-III/
• https://w3schools.com
YouTube Channels:
• CodeWithHarry
• Telusko
• FormyScholars
• CleverProgrammer