Restaurant Cashback Website PHP Script

Tastebubz is a restaurant cashback website built on YII, Php framework which helps the users to

Share on Social Media

Details


Tastebudz application comes with three modules
1. Website for users to browse restaurants and avail cashbacks.
2. Admin portal for Content Management.
3. CRM for restaurant owners.

**Live Preview Urls**
##### **Website**
Link: [Demo](http://tastebudz.rajeshtomjoe.com)
> Please register to explore the functionalities

##### **Admin**
Link: [Demo](http://tastebudz-admin.rajeshtomjoe.com)

Username: admin

Password: admin@12345

##### **CRM**
Link: [Demo](http://tastebudz-crm.rajeshtomjoe.com)

Username: crm@tastebudz.me

Password: crm@12345

#### Features
##### **Website**
* Search Restaurants by City, Name, Locality, Cuisine, Features, Veg & Non-veg
* Search results page with pagination
* SEO friendly url for search results page
* Restaurant Detail page with Google maps, Share to Social media etc.
* Login/Register with email password
* Forgot Password
* Email Activation
* Modal based Login/Register
* Edit Profile
* View Cashback Details
* Change Password
* Update Bank Details
* Upload Restaurant Receipts for Cashback Redeem
* Verify Mobile Number
* Contact Form

##### **Admin**
* Manage Restaurants
* Filter Restaurant by City, Name, Locality, Verification Status
* Create Restaurant
* Update Restaurant
* Verify Restaurant
* Reject Restaurant
* Restaurant Verification Review Moderation
* Manage Cuisines
* Manage City/Localities
* Manage Facilities
* Manage Restaurant Payment Options
* Login
* Edit Profile
* Change Password
* Manage CMS users
* Manage Cashback
* Approval Flow Management for Cashback on behalf of the Restaurant owners
* View Cashback requests
* Filter Cashback request by Status

##### **CRM**
* Manage Menu
* Add/Edit/Delete Categories
* Add/Edit/Delete Items
* Manage Cashback
* Approval Flow Management for Cashback on behalf of the Restaurant owners
* View Cashback requests
* Filter Cashback request by Status
* Edit Profile
* Upload Sample Bills

#### Built With
* YII 1
* HTML5, CSS, JavaScript
* Require js
* Php
* Mysql
* Bootstrap
* jQuery
* Google Maps
* Amazon S3

#### Whats included
* Yii Modules
* Website
* Admin
* CRM
* Mysql Database Script which is required for the application

Installation Instructions

After your have downloaded or cloned the application.

#### Prerequisites
* Php > 5.1.*
* Apache or Nginx Server
* Mysql > 5.*
* Amazon S3

##### **Please follow the Steps mentioned below**
#### Step1
Please create 3 environment php files outside your applications folder
`tastebudz_web_env.php`
```php

return array(
'appName'=>'Tastebudz',

'facebookAppId'=>'123',
'facebookSecret'=>'123',

'mailTransportOptions'=> array(
'host'=>'google.com',
'encryption' => 'ssl',
'username'=>'123',
'password'=>'123',
'port'=>'465',
),

'dbHost'=>'localhost',
'dbName'=>'tastebudz',
'dbUsername'=>'root',
'dbPassword'=>'',

's3AccessKey'=>'123',
's3SecretKey'=>'123',
's3BucketName'=>'yourbucketname',

'noreplyemail' => 'noreply@example.com'
);
```

`tastebudz_admin_env.php`
```php

return array(
'appName'=>'Tastebudz',

'dbHost'=>'localhost',
'dbName'=>'tastebudz',
'dbUsername'=>'root',
'dbPassword'=>''
);
```

`tastebudz_crm_env.php`
```php

return array(
'appName'=>'Tastebudz CRM',

'dbHost'=>'localhost',
'dbName'=>'tastebudz',
'dbUsername'=>'root',
'dbPassword'=>'',

's3AccessKey'=>'123',
's3SecretKey'=>'123',
's3BucketName'=>'123'
);
```

> Note: if your changing name or path of the environment files you should change the name and location in the following files
> `web/protected/config/main.php`
> `admin/protected/config/main.php`
> `crm/protected/config/main.php`

#### Step 2
* Create database `tastebudz` in Mysql
* Import the SQL into tastebudz database from the following location `db/tastebudz.sql`

#### Step 3
Provide read/write permission to the following folders
* `web/protected/runtime`
* `admin/protected/runtime`, `admin/assets`
* `crm/protected/runtime`, `crm/assets`

##### **Please follow the below steps for production release**
* Change the debug option param `yiiDebug` to false in the following files
* `web/protected/config/main.php`
* `admin/protected/config/main.php`
* `crm/protected/config/main.php`
* For security reason you can rename the Yii framework folder and change the param `yiiPath` in `main.php` files.

#### Troubleshooting
If you face any issues related links redirecting to home page, Please change the ` .htaccess` file according to OS
**Windows**
```php
Options +FollowSymLinks
IndexIgnore */*
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php
```

**Linux**
```php
Options +FollowSymLinks
IndexIgnore */*
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)\?*$ index.php/$1 [L,QSA]
```

##### **Please refer the following links**
* [Apache and Nginx configurations](http://www.yiiframework.com/doc/guide/1.1/en/quickstart.apache-nginx-config)
* [Yii 1 Docs](http://www.yiiframework.com/doc/api/)

Version History


v1.0

Released On: November 20, 2017


Reviews


Not yet reviewed

Question or Comment


No support questions or comments