Guide to setup and use the listing manage management web application

Iznet Franklin

Requirements

This web application runs on top of Laravel version 4.2 and requires the following programs to function correctly:

  • PHP >= 5.4
  • MCrypt PHP Extension
  • ImageMagic (for resizing listing images)

To install Laravel's dependencies, you also need to have Composer (PHP package manager) installed on your server. If you don't have it yet then go to the Getting Started page and follow the installation guide.

Installation

After purchasing the app, download the zip file and unzip it to your web server root folder. Next, open command line application (Terminal on Mac o Linux or Window Command Prompt on Windows) and then change to web server root location run the following command to install Laravel:

composer install

After this step is completed, depend on what type of web server you're using, configure virtual host to serve up the application.

Configure Application Variables

Laravel allows us to put application environment variales in a .env.php file in project folder. Since this file is ignored by Git, you need to create this file manually. This file is a normal PHP file that simply returns an array contains all application variables.

For this specific listing management application, the following variables are required:

<?php
return [
        'DB_NAME' => 'listings',
    'DB_USERNAME' => 'root',
    'DB_PASSWORD' => 'your_pass',
];

Change values for keys in the returned array that suit your server configuration.

You can also add other variables:

  • GA_TRACKING_ID: Google analytics site tracking id.
  • SITE_TITLE: The title of your site. For page that doesn't have title this value will be used.
  • SITE_DESCRIPTION: The site description. For page that doesn't have description this value will be used.

Create Database

Using MySQL database client (or PhpMyadmin) to access database server and create database for our application:

> create database listings;

Migrate and Seed Data

Open command line application and run the following command to migrate database:

php artisan migrate

After that run the next command to seed data to database:

php artisan db:seed

After this final step is finished, you can open the web application via a web browser!

Manage Users

To manage properties on the web, you will need to login to an account. An account can either has the admin role or broker role. To change role, you will need to edit the value of those fields for record on users table:

  • is_admin: This marks a user as administrator.
  • is_broker: This marks a user as a broker.
  • is_featured: This allow user to appear on featured user section of the page (see the top-right section on home page and search page).

The UsersTableSeeder.php file contains seeding data for all users after running seeding command.

Manage Listings

The manage listing functionality is fairly simple and straight forward:

  • To create a new listing: Login to your account, go to home page and click the Offer property button. Filling in content and hit the submit button.
  • To edit/delete listing: Go to listing page, you see the Edit | Delete links showing just above the listing image carousel. Note: you need to be the listing creator or admin in order to see those links and delete the listing.

Mange Banner Ads

There're two types of banner ads and each serves different purpose:

  • Dynamic banner ads (with animation): This help catching up user attention for trending projects on the market.
  • Static banner ads (no animation): This for other agents or brokers to advertise properties they're selling.

All banner files are placed in app/views/ads folder and are organized in a similar folder structure with the parent view files that use them. For example, the files placed in view/ads/home will be used by views files in view/home/ folder.

Manage Text Translation

If your site is not in English, you can easily add text translation by setting locale in .env.php file. For example:

return [
    'locale' => 'ja'
    // ...
];

Then you need to duplicate the en folder inside app/lang/ and update text translation for each file in there.

Note: Keys that reside inside urls.php file are used not only for translation but by application itself. If you change values for those keys you also need to update the logic parsing url, other wise the application cannot find any properties for SEO-friendly URL. Methods contain logic to parsing SEO-friendly URL are SearchHelper::fitlerSeachDefault() and Listing::flashBreadcrumItemsDefault().

Reply