# Lawyer - Law and Attorney Website CMS

## Documentation

- Author: phpscriptpoint
- Author Portfolio: https://codecanyon.net/user/phpscriptpoint/portfolio
- Support Email: phpscriptpoint@gmail.com

### Introduction

Lawyer is a responsive Law and Attorney Firm related Website Content Management System (CMS). It is a complete solution for a law firm or justice website. This CMS is built completely with PHP and MySQL. It has a nice and attractive front end and back end interface that are really awesome and eyecatching. The back end has a lot of nice and maintainable features that are needed for a modern and professional website to handle the contents easily by client. Almost all kinds of changes are possible to do using the admin panel without having any kind or programming language knowledge.

This CMS is built using the procedural php and without any framework. For this reason, it can be customized easily by most of the developers. This CMS script was prepared using the PDO feature of PHP language. That’s why, no SQL injection and XSS attack is possible here and your website will be safe. Also in all pages, admin level security and invalid page url submission checking were done.

### Features

This CMS script has the following features:

- Easy and simple interface to use
- Fully responsive for any kind of device
- Powerful admin backend like WordPress
- Clean coding with proper commenting
- Secured coding against SQL injection
- Direct access or invalid URL press stopped for each pages
- Statistics of some data in dashboard
- Multilevel user management
- Multiple category layouts for the home page sections
- Unlimited news category and post creation and management
- Unlimited photo and video category creation and management
- Unlimited photo and video post creation and management
- Unlimited page creation and management
- Unlimited menu creation with dropdown
- Unlimited attorney creation and management
- Unlimited service creation and management
- Unlimited testimonial creation and management
- Unlimited partner or sponsor creation and management
- Unlimited FAQ categories and item creation and management
- Facebook comment section for each post
- SEO meta data setup for each post, page and category
- SEO friendly URL structure
- Unlimited file uploading system
- All major social media URL setup for top bar and sidebar
- Preloader On/Off option added
- Google Recaptcha On/Off option added
- SMTP Email System Implemented
- Forget Password system for admin panel

### Requirements

Following modules must be activated on your server:

1. PHP >= 7.0
2. BCMath PHP Extension
3. Ctype PHP Extension
4. Fileinfo PHP extension
5. JSON PHP Extension
6. Mbstring PHP Extension
7. OpenSSL PHP Extension
8. PDO PHP Extension
9. Tokenizer PHP Extension
10. XML PHP Extension

### Installation

In order to install the CMS, please follow these steps:

1. Download the main zip file from Codecanyon and extract it. You will get total 3 folders in there: database, documentation and upload.
2. In the upload folder, you will get a folder named cms.
3. Compress this folder and name something like cms.zip. Then upload this file into your server using FTP or Cpanel. Extract this and use. You can use our php script into root domain or subdomain.
4. Create mysql database using cpanel or your hosting provider's system. Then import the lawyer.sql file (you will get it in database folder) into your created database.
5. Now you will have to edit the configuration file. Location of the configuration file is here: root > admin > config.php.

6. Open up the config.php file with any text editor (for example: Notepad++).

7. In this config.php file, you will get some important configuration settings. You must have to edit those properly. Just change the mentioned values and the script will work without any problem.
   - host_name: This is your database host name
   - database_name: Create a database name in your host (localhost or webhost) and put name here
   - database_username: Username of the database you created
   - database_password: Password of the database you created
   - MOD_REWRITE: Change only if mod_rewrite is enabled on your server. If mod_rewrite is enabled, change it to 'On'. But this is optional.

### Admin Panel Login

In order to login to the admin panel, go to the url below:

http://www.yourwebsite.com/admin

Here "yourwebsite" is your main domain name. Just after your main url, you have to put "admin" and that's it.

There are 3 levels of admins. Those are:

Super Admin: Super admin has full control over the website. He can create, delete, edit new admins, publishers and other super admin.

Admin: Admin also has the full control over the website. But he can not create, delete, edit other super admins or admins. He can only edit his own information. But admin can create, edit and delete publishers.

Publisher: Publisher can only publish, edit or delete news. He does not have other controls over the website.

Super Admin Login Credentials:
Email: sadmin@gmail.com
Password: 1234
Admin Login Credentials:
Email: admin@gmail.com
Password: 1234
Publisher Login Credentials:
Email: publisher@gmail.com
Password: 1234

### Email Setting

In order to run the script without problem, you have to set up the email (with SMTP) properly. So, from the admin panel, go to Settings > Email. Change the information given there according to your requirements.

### Profile Information

In order to change the profile information like admin login email, admin login password and other information, go to top right corner. Click on the admin name like this photo and go to Edit Profile section:

### Update History

You will get all the details about an update in this section:

#### Version: 1.6 (August 21, 2022)

    Overall Changes:
    - Changed the phpmailer codes for php 8+
    - Made the script compatible with php 8+

    Changed Files:
    - page.php
    - admin/forget-password.php
    - admin/news.php
    - assets/mail/Exception.php
    - assets/mail/OAuth.php
    - assets/mail/PHPMailer.php
    - assets/mail/POP3.php
    - assets/mail/SMTP.php

#### Version: 1.5 (February 26, 2022)

    Overall Changes:
    - Fixed minor bug in publisher profile page

    Changed Files:
    - admin/header.php

#### Version: 1.4 (July 28, 2021)

    Overall Changes:
    - Home menu selection option added
    - Color change option added
    - Fixed share button issue
    - Database settings table field type changed
    - Remove BASE_URL setup option from "config.php" file.
    So now BASE_URL will be automatically detected and customer does not need to enter it manually.

    Changed Files:
    - admin/settings.php
    - admin/menu.php
    - admin/config.php
    - admin/attorney.php
    - admin/attorney-edit.php
    - admin/slider.php
    - admin/slider-edit.php
    - admin/testimonial.php
    - admin/testimonial-edit.php
    - admin/partner.php
    - admin/partner-edit.php
    - admin/service.php
    - admin/service-edit.php
    - admin/page-edit.php
    - admin/profile-edit.php
    - header.php
    - news.php
    - assets/css/style.css

    Changed in Database:
    - tbl_settings: changed the field types varchar into text
    - Added new field in "tbl_settings". The field name is: website_color
    - Added new table: "tbl_menu_home"

#### Version: 1.3 (December 15, 2020)

    Overall Changes:
    - Replaced ckeditor with summernote.
    - Preloader on/off option added.
    - Google Recaptcha on/off option added.
    - SMTP email system added for all emails.
    - Admin panel forget password system added.
    - Changed database encode to UTF-8 for all tables.
    - Toastr floating messages added for front end.

    Removed Files:
    - root/assets/mail/contact.php

    Moved Files:
    - root/admin/style.css into root/admin/css/style.css

    Removed folder:
    - root/admin/ckeditor

    Changed Files:
    - root/page.php
    - root/header.php
    - root/footer.php
    - root/admin/config.php
    - root/admin/header.php
    - root/admin/footer.php
    - root/admin/settings.php
    - root/assets/css/style.css
    - root/assets/css/bootstrap.min.css
    - root/assets/css/responsive.css
    - root/admin/css/bootstrap.min.css

    Added Files:
    - root/admin/forget-password.php
    - root/admin/reset-password.php
    - root/admin/reset-password-success.php
    - root/admin/fonts/summernote.eot
    - root/admin/fonts/summernote.ttf
    - root/admin/fonts/summernote.woff
    - root/admin/js/summernote.js
    - root/admin/css/summernote.css
    - root/assets/css/toastr.min.css
    - root/assets/js/toastr.min.js
    - root/assets/mail/class.phpmailer.php
    - root/assets/mail/class.smtp.php
    - root/assets/mail/Exception.php
    - root/assets/mail/OAuth.php
    - root/assets/mail/PHPMailer.php
    - root/assets/mail/POP3.php
    - root/assets/mail/SMTP.php

    Database Table Change:
    - tbl_settings (added the SMTP fields, recaptcha and preloader status fields here)
    - tbl_user (added the token field)

    Database Table Unicode Change:
    - Changed database encode to UTF-8 for all tables.
    In order to apply this change, paste the following code in SQL section of phpmyadmin (https://prnt.sc/w291ea).
    Do this for all the tables.

    ALTER TABLE your_table_name CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;

#### Version: 1.2 (March 31, 2019)

    - Added Google re-captcha into the contact page form.
    - Updated the documentation about the setup of re-captcha site key.
    - Updated the database to add re-captcha site key.

#### Version: 1.1 (March 31, 2019)

    - Fixed: Service box responsiveness issue.

#### Version: 1.0 (November 07, 2017)

    - Initial Release

### Support

#### Support Process (if support is on)

1. First look at the navigation menu on the left side of the documentation. You will get all important topics here.
2. Search the entire document pressing "ctrl+F", enter your query string and press "Search".
3. If you still do not get the answer of your question, then contact us via codecanyon and always give your live URL when asking for help.
4. When asking for help, please provide the details and also give some screenshots if possible.

#### Why we do not give support through codecanyon comment section?

1. Do not ask for support in the comment section of codecanyon. Because our codecanyon account access is restricted and support team will not be able to reply. In that case, support will be delayed.
2. It is tough to track the communication in this way.
3. We think, it is not wise to show eveyone your website's URL and other sensitive information.

#### Support Hours and Time

We give reply to our support emails within 24-48 hours.

#### Advanced or Modification Support

If you request us help, which only needs us to write a couple lines of code, we will assist you in that. But if your query requires to write a lot of codes to be published, we can only provide you guidance and you need to hire a developer if you don't have that skills to implement it yourself.