Executive Summary
Who uses the Real Estate Template?
- Individual agents who need to:
-
Store information about their Listings and the Buyers and Sellers they work with
-
Keep track of showings to prospective Buyers
-
Establish a comprehensive contact strategy and nurture leads effectively.
- Brokers who need to effectively manage Listings and workflows for multiple Agents.
Key Features
-
Keeps track of contacts and activities related to a specific Buyer
-
Keeps track of contacts and activities related to a specific Seller
-
Keeps track of showings and other activities related to a Listing
-
Listings can have multiple interested Buyers
-
Buyers may be interested in multiple Listings
-
Listings can be searched by various criteria: Property Size; Location; Number of Rooms; Property Type
-
Listings and buyers can be assigned to specific Agents
-
Sellers can have more than one Listing
In the real estate listings app is a flexible way to manage real estate for residential and commercial properties. Realtors and brokers can manage listings by signing in to the real estate listings app. They have the ability to create, modify, and add pictures to each listing’s gallery. Brokers can manage any listings by any agents while an agent can only manage his/her own real estate listings. Agents can only see their own relevant data.
Potential buyers and sellers can also use the property search feature and send emails enquiry to the agent of any listing.
Key Features
- Customizable with your own data in addition to the listings, photos and queries.
- Brokers and agents have access to their listings and queries from any location.
- Each agent signs in to edit their own listings, and only they have access to the information.
Key Components
The real estate listings system has several components. The primary component is the property listings, and also with listing inquiries, simple login and agents management.
- Listings
- Agents
- Broker
- Inquiries
- Listing Details
Database Schema
Note that the diagram does not show foreign key constrains
Setting up the Database
First, create a database named ‘real_estate_listing‘; then find the schema.sql from db folder, and then execute the script using a MySQL tool such as MySQL Workbench. This will create all required tables and data for this app.
Set up phpGrid
Be sure to obtain a copy of phpGrid before you proceed. Before we begin coding, we must include the following information in conf.php, the phpGrid configuration file.
1 2 3 4 5 6 | define('PHPGRID_DB_HOSTNAME', 'localhost'); // host name define('PHPGRID_DB_USERNAME', 'root'); // database user name define('PHPGRID_DB_PASSWORD', 'password'); // database password define('PHPGRID_DB_NAME', 'real_estate_listing'); define('PHPGRID_DB_TYPE', 'mysql'); // database type define('PHPGRID_DB_CHARSET','utf8mb4'); |
Menus
The include file for the menu is stored in an inc folder named menu.php. The code for the menu is straightforward. I will not go into great detail. Feel free to look at the code inside the inc folder.
Pages
We will use the same page template we used for the CRM and Project Management tutorials.
Home
Home.php is a preview of what the actual real estate listings will look like. Through custom CSS, the layout are customizable to show more photos, property details and etc. Note that it does not use Bootstrap framework for column layouts so the app can be more easily integrated with little CSS conflicts.
Agents List
A list of real estate agents in an editable datagrid where a broker can view current listings by agents and their contact details. The data are stored in account database table.
Broker Dashboard
This is where broker see his list of all properties that are currently been listed for sale or for rent, in additional to individual property details such as bath, bedroom, and lot size etc. Also listing photos are displayed.
Inquiries (w/ source code)
It shows potential buyer inquires from inquiry table with hot links to listing details as well as the agents who are responsible.