“SmartEnd CMS - Laravel Admin Dashboard with Frontend and Restful API ” Documentation by “MMondi” v10.0.3


“SmartEnd CMS - Laravel Admin Dashboard with Frontend and Restful API ”

Created: 10/03/2017
Last update : 23/02/2024
By: MMondi
Email: support@smartfordesign.com

Thank you for purchasing my dashboard. If you have any questions that are beyond the scope of this help file, please feel free to email via my user page contact form here. Thanks so much!


Table of Contents

  1. Installation
  2. Dashboard
  3. Analytics
  4. Contacts
  5. Inbox
  6. Calendar
  7. Pages & Sections
  8. Ad. Banners
  9. General Settings
  10. Site Menus
  11. Users & Permissions
  12. Webmaster Settings
  13. Site Sections
  14. Banners settings
  15. Translations
  16. Changelog
  17. APIs Documentation

A) Installation - top

Via Installation wizard:

  1. Copy project files to your website root folder.
  2. Open your website in browser and you will be redirected to "/install"
  3. Follow installation wizard step by step to finish installation.
  4. View Installation Guide

Or Manual Installation:

  1. Copy project folder to your root folder.
  2. Create your MySQL database and import smartend_db.sql file.
  3. Edit (/core/.env) file and add details for MySQL connection:

    For MySQL DB
    • DB_CONNECTION=mysql
    • DB_HOST=127.0.0.1
    • DB_PORT=3306
    • DB_DATABASE=smartend_db
    • DB_USERNAME=root
    • DB_PASSWORD=root

    For PostgreSQL DB
    • DB_CONNECTION=pgsql
    • DB_HOST=127.0.0.1
    • DB_PORT=5432
    • DB_DATABASE=smartend_db
    • DB_USERNAME=postgres
    • DB_PASSWORD=postgres

  4. Rename this file "/core/storage/_installed" to "installed"
  5. Congratulation your project ready to work.
Default admin login information:
Email: admin@site.com
Password: admin

Important Notes:



B) Dashboard - top

Dashboard will give you the latest updates and visitor reports for current day. Also it will be dynamic for your website sections and give you last updates from Inbox, Calendar and Contacts.

Also you will see :


C) Analytics - top

Models: AnalyticsPage, AnalyticsVisitor
Controller: AnalyticsController
MySQL Tables: analytics_pages, analytics_visitors

Analytics enable you to view and check all the website visitors and pages viewed as a report and that can be for:

Also Visitors and Page views grouped by :

Visitor History

Show a list of visitors ordered by date, IP, Country and City. You can click any IP to get IP history.

IP inquiry

From here you can search by IP to get the IP history report that show the details for IP :Country, City, Region, Address, MAP Location, Host name, Organization, Last Visit, Operating system and Browser.
Activities History : show all pages and links visited by this IP ordered by date.


D) Contacts - top

Models: Contact, ContactsGroup, Country
Controller: ContactsController
MySQL Tables: contacts, contacts_groups, countries

Fields that can be recorded :


E) Inbox - top

Models: Webmail, WebmailsGroup, WebmailsFile
Controller: WebmailsController
MySQL Tables: webmails, webmails_groups, webmails_files


F) Calendar - top

Model: Event
Controller: EventsController
MySQL Table: events


G) Pages & Sections - top

Models: Topic, Section, Photo, Comment, Map
Controllers: TopicsController, SectionsController
MySQL Tables: topics, sections, photos, comments, maps

You can prepare all sections you need for the website and set it from (Webmaster » Site Sections).You can add different types of sections:

You can set these settings for every section : All active sections will appear automatically on the main menu. Every record/topic can contain one or more of these tabs:


H) Ad. Banners - top

Model: Banner
Controller: BannersController
MySQL Table: banners

You can prepare all banners types you need for the website and set it from (Webmaster » Banners settings).You can add different types of banners:

You can set these settings for every banner type :


I) General Settings - top

Model: Setting
Controller: SettingsController
MySQL Table: settings

From this page you can set all general settings for you website you will find these settings in four tabs:


Model: Menu
Controller: MenusController
MySQL Table: menus

Enable you to prepare all menus you will need in your website to be dynamic and easy to update any time :


K) Users & Permissions - top

Model: User, Permissions
Controller: UsersController
MySQL Table: users, permissions

You can create many users to access this dashboard with different permissions. You mange and create different types of permissions:

To create a new user you will fill a form that will ask you for: Also you can connect you webmail to open it directly from dashboard and see how many new emails you have.


L) Webmaster General Settings - top

Model: WebmasterSetting
Controller: WebmasterSettingsController
MySQL Table: webmaster_settings

From this page you can control Active or disable Apps for your dashboard:

Other Settings:


M) Site Sections - top

Model: WebmasterSection
Controller: WebmasterSectionsController
MySQL Table: webmaster_sections

From this page you can add and set all data sections for the website. More details in Pages & Sections.


N) Banners settings - top

Model: WebmasterBanner
Controller: WebmasterBannersController
MySQL Table: webmaster_banners

From this page you can add and set different types of banners. More details in Ad. Banners.


O) Translations - top

You can import all site translation words, update them and export them again and it will be updated and saved to language system files.


P) Changelog - top

Version 1.0 (December 27, 2016)
- Release of this script on Codecanyon.
- Built with Laravel 5.2.

Version 1.1 (January 02, 2017)
- Adding a new version for Laravel 5.3.

Version 1.2 (January 17, 2017)
- Resolve: Include sql file with 5.3 version.
- Resolve: Logout bug on 5.3 version.
- Feature: Get & save visitors information ( Analytics ) to the database.

Version 2.0 (March 10, 2017)
- Feature: Update to Laravel version 5.4.
- Feature: Visual translation for all languages vars.
- Feature: Advanced permissions for users.
- Feature: Ability to activate order form with topics.
- Feature: Setting DB tables prefix in .env File.
- Feature: Setting default language in .env File.
- Feature: Enable/Disable Captcha from .env File.
- Feature: Calendar language now available to set from language file.
- Feature: Adding Vimeo to video types .
- Feature: Icon Picker for Ad. Banners .
- Feature: Adding Email notifications settings to General Settings.
- Feature: Adding Frontend site style settings to General Settings.
- Feature: General Frontend settings to Webmaster General Settings.
- Feature: NEW Frontend site preview.

Version 2.1 (July 16, 2017)
- Resolve bug on editing main admin user.
- Resolve bug on frontend footer.
- Resolve bug on calendar events end time.
- Resolve bug on frontend RTL main menu.
- Adding slide to the conformation message on contact page.
- Adding arrows to the main menu that has sub menus frontend.
- Adding Embed Video ability on backend & frontend.

Version 2.2 (September 18, 2017)
- Resolve : Automatic adding permission while creating new site sections.
- Resolve : title for new site sections on main menu (if no translation).
- Feature: Adding ability to activate expire date with topics of any section.
- Feature: Adding ability to activate attaching more files with any topic.
- Feature: View attached files links to download on topic page of frontend.

Version 3.0 (September 18, 2017)
- Feature: Update to Laravel version 5.5 (Requires PHP 7.0.0 or more).

Version 3.1 (November 16, 2017)
- Feature: Restful API is now available for Frontend (/api/v1).
- Feature: Ability to add additional custom fields to any section (CRUD).
- Feature: Automatic sitemap generator (/sitemap.xml or /en/sitemap or /ar/sitemap).
- Feature: Update SEO settings and ability to activate friendly URLs.
- Feature: Multi categories choosing for every topic.
- Feature: Related topics tab for every topic.
- Feature: Ability to activate/disable registration feature for the dashboard.
- Feature: Rearrange Frontend and css style.
- Feature: Adding partners section on Frontend.
- Resolve: Exception if topic ID not found.
- Resolve: Open/Close website feature.
- Resolve: Comments showing status if disabled.
- Resolve: show subcategories on main and side menu.
- Resolve: analytics app active/disable on dashboard side menu.
- Resolve: languages choosing depending on active one.
- Resolve: fix second language (ar) URLs in all pages for frontend website & sitemap.
Two Versions with the same features is available for (Laravel 5.4 & Laravel 5.5)

Version 3.2 (January 18, 2018)
- Resolve: Language code in session & menu URLs.

Version 4.0 (February 25, 2018)
- Adding a new project version for Laravel 5.6 (Requires PHP >= 7.1.3).

Version 4.1 (April 22, 2018)
- Feature: adding login with Facebook ,Twitter, Google, LinkedIN, Github, Bitbucket.
- Feature: adding google Tags & Analytics control in dashboard.
- Feature: activate/Deactivate captcha from dashboard.
- Feature: adding Email settings control in dashboard.
- Feature: adding clear cache feature.
- Feature: optimize Banners view method.
- Feature: optimize Menus view method.
- Feature: bulk settings save with one button.
- Feature: adding timezone to language settings.
- Feature: translate all error messages to Arabic.
- Feature: change Arabic fonts in dashboard & frontend.
- Feature: Update all dependencies & packages.
- Feature: Rearrange & Optimize project files.
- Resolve: Redirect after login to /admin.
- Resolve: user profile picture upload path.
- Resolve: homepage blocks dependencies.
- Resolve: reCAPTCHA validation in Laravel 5.6 version.
- Resolve: removing files while deleting multi photos in topics.

Version 4.2 (May 17, 2018)
- Feature: fixed header active/disable for Frontend.
- Feature: adding events on calendar on day click.
- Resolve: count() exception in PHP7.2.
- Resolve: sitemap Date Format.

Version 4.3 (May 27, 2018)
- Feature: Update all dependencies & packages.
- Fix: Id passing of left side banners.
- Fix: Captcha package error for Laravel v5.4,v5.5.
- Fix: Boxed style width on mobile view.
- Fix: Whatsapp link on social icons.
- Fix: Notification message topic title in comment & order form.

Version 4.4 (August 23, 2018)
- Fix: Laravel version 5.4 running issue on PHP 5.6.
- Fix: Frontend boxed + fixed header scroll.
- Fix: Bulk options if no record selected issue.
- Fix: PHP 7.1 count() problem in API calls.
- Fix: Reset password page issue.

Version 5.0 (February 15, 2019)
- Adding a new project version for Laravel 5.7 (Requires PHP >= 7.1.3).
- Fix: Migrations fresh rand() error.
- Fix: Rows Ordering if row checked or not checked.
- Fix: Topics count in dashboard categories page.
- Fix: Categories enable/disable in frontend main menu.
- Fix: External links path in frontend main menu.
- Fix: Additional fields enable/disable in webmaster site sections.
- Update: Editor photo insert/upload as physical file not to DB.
- Update: Google maps language control form backLang file.

Version 5.8 (July 20, 2019)
- Update: To the latest Laravel version 5.8 (Requires PHP >= 7.1.3).
- Fix: View blocked pages nested in frontend main menu.
- Fix: Remove connected menu links on destroy site sections.
- Fix: Remove connected users on destroy permission group.

Version 5.8.1 (August 30, 2019)
- Fix: Installer warning in local machine.
- Fix: Slider banner title in case no description.
- Fix: Google maps URL if HTTPS is enabled.

Version 6.0.0 (February 27, 2020)
- Update: To the latest Laravel version 6.0 (Requires PHP >= 7.2.0).
- Urgent: Add htaccess file to protect /core files from direct access.
- Fix: Topics list in front from multi categories.
- Fix: External links start with (www) in main menu.
- Fix: Resolve compact errors with php v7.3.
- Fix: Resolve str_limit errors with php v7.3.
- Fix: Receive orders in order group in web mail.
- Fix: Changing contacts status.
- Update: improve visitors analytics generation.
- Update: hide user name of topics from front totally.
- Feature: Control Google maps api key from dashboard.
- Feature: Enable sending attachment with emails from web mail.
- Feature: Change topics ordering (ASC/DESC) from front settings.
- Feature: Order,comment and contact forms auto detect logged user info.
- Feature: Order,comment and contact forms auto detect logged user info.
- Feature: Convert latest articles to be in a slider.

Version 7.0.0 (March 15, 2020)
- Update: To the latest Laravel version 7.2.2 (Requires PHP >= 7.2.5).
- Feature: *** Adding Multi Languages & Translation Manager ***
- Feature: Ability to auto repair & add SEO URLs if empty in SEO tab.
- Update: Optimise and improve code structure.
- Update: Improve installation process.
- Upgrade Guide:  https://smartend.app/docs/update7.0.html

Version 7.1.0 (May 02, 2020)
- Update: To the latest Laravel version 7.9.2 (Requires PHP >= 7.2.5).
- Update: Copy titles and details on adding new language from default language.
- Feature: Add new method in API to get topic by category.
- Fix: Webmaster section title translation.
- Fix: Include missing web.config file for IIS users.

Version 7.2.0 (July 18, 2020)
- Update: To the latest Laravel version 7.20.0 (Requires PHP >= 7.2.5).
- Fix: search page variable error in frontend.
- Fix: change google_analytics_code DB field to be text.
- Fix: profile and dashboard links after login in frontend header.
- Fix: frontend main menu in boxed and sticky header mode.

Version 8.0.0 (November 07, 2020)
- Update: To the latest Laravel version 8.13.0 (Requires PHP >= 7.3).
- Update: Rebuild Dashboard HTML Views, JS & CSS to arrange and Improve.
- Feature: Ability to change admin area path from dashboard.
- Feature: Improve login page style with ability to add background image.
- Feature: Control analytics service with ability to disable analytics feature.
- Feature: update email connection settings with new abilities.
- Feature: Ability to update design of Mail template.
- Feature: Allow multi emails in notification Emails ( accept comma ,).
- Feature: Move login & register paths to be inside admin path.
- Feature: Direct view button on dashboard to view topics & categories.
- Feature: Dashboard Datatable view with search in topics.
- Feature: New site section type as a table view.
- Feature: New site section type for private data ( contents will not appear for public ).
- Feature: Ability to control custom fields list on table or frontend or topic page.
- Feature: Ability to create section analytics depending on list custom field.
- Feature: Ability to add custom css class for new fields with predefined classes listing.
- Feature: Ability to add custom css for frontend from dashboard.
- Fix: New user register default permission group Id.
- Fix: Admin users page view if permission group deleted.
- Fix: Sub categories arrow in dashboard view.
- Fix: Remove Quantity from order form.

Version 8.1.0 (December 13, 2020)
- Update: To the latest Laravel version 8.18.1 (Requires PHP >= 7.3).
- Feature: Ability to view website for admins on case it is closed for public.
- Feature: Permission for auto approve topics or set not active to be activated manually by admin.
- Feature: Ability to choose permission groups for every custom field.
- Feature: Ability to activate custom Admin home page for every permission group.
- Feature: New notifications cases on topic edit for table and private sections.
- Fix: Re migration Identifier name is too long issue.
- Fix: Saving site sections ordering.

Version 8.2.0 (December 26, 2020)
- Feature: Add New Row in homepage for welcome text details with admin control.
- Feature: Ability to add photos only on homepage slider without text details.
- Fix: Searching in additional fields data.

Version 8.3.0 (December 26, 2020)
- Update: To the latest Laravel version 8.25.0 (Requires PHP >= 7.3).
- Fix: Date picker arrows on RTL version.
- Fix: Table view header inactive columns.
- Fix: Search in additional fields select type.
- Fix: Fix YouTube image link in case of use HTTPS.
- Fix: The link of edit events in calendar.
- Fix: Search if no results on contacts page.
- Fix: Direct menu links slug in multi language case.
- Feature: Convert statistics of table and private section to charts.
- Feature: Change calendar locale to be the same as view language.
- Feature: Adding ability to choose first day of week on calendar.
- Feature: Show new comments count badge on dashboard with topics list.
- Feature: Improve home controller code structure.

Version 8.4.0 (May 22, 2021)
- Update: To the latest Laravel v8.42.1 (Requires PHP >= 7.3).
- Fix: Visitors Analytics Fetch Information.
- Fix: Frontend search page pagination
- Fix: Title translation for row 4 on webmaster frontend settings


Version 8.5.0 (August 21, 2021)
- Update: To the latest Laravel v8.55.0 (Requires PHP >= 7.4).
- Fix: Main Menu direct link error if is empty.
- Fix: Fix multi photo uploads session issue.
- Fix: Show uploaded video in case of video banners.
- Fix: Inserting photo in custom admin page editor.
- Feature: Support PostgreSQL DB Type.
- Feature: Adding RSS feature to website sections.
- Feature: Adding visitor analytics to Rest API.
- Feature: Add Autoplay to video banners & Video topic page.
- Feature: Predefine many languages on fresh installation by default.
- Feature: Adding translation to other languages ( हिंदी भाषा - ภาษาไทย - 中文語言 - Le français )


Version 8.6.0 (January 21, 2022)
- Update: To the latest Laravel v8.79.0 (Requires PHP >= 7.4).
- Feature: Add the ability to create custom public forms.
- Feature: Add the ability to include a custom form to any page.
- Feature: Receive all public forms data in dashboard with email notification.
- Feature: Integrate CKEditor for editing the page details.
- Feature: Integrate TinyMCE for editing the page details.
- Feature: Add a new file manager and integrate it with CKEditor & TinyMCE.
- Feature: Improve loading and minimise quires.
- Feature: Change topics list ordering to be by date.
- Feature: If attach file is MP3 show Audio player instead of download link.
- Feature: Improvements for style & CSS.
- Feature: Add Big whatsapp bubble chat icon if enabled.
- Fix: Disable SEO tab on private data sections.
- Fix: Redirect admin user after insert if not have edit role.
- Fix: Hide Analytics widgets and pages if it is disabled.
- Upgrade Guide:  https://smartend.app/docs/update8.6.html

Version 8.6.1 (April 10, 2022)
- Update: To Laravel v8.83.7 (Requires PHP >= 7.4).
- Important: Fix Permissions for settings and webmaster if user not have right permission.
- Feature: Add preview and delete buttons on topic edit page.
- Feature: Ability to use a custom slug for contact page.
- Fix: Make backend path required on saving settings to avoid broken URLs.
- Fix: support "ul" and "ol" on frontend view.

Version 8.6.2 (May 27, 2022)
- Update: To Laravel v8.83.14 (Requires PHP >= 7.4).
- Feature: Change translation manager to a new great one.
- Feature: add 404 page for frontend in case of not found urls.
- Feature: Require strong passwords for new admin users.
- Fix: Showing validation error messages.
- Fix: A broken URL in frontend.
- Fix: Hide listing for /core sub folders.
- Fix: Local installation error for long mysql identifier.
- Fix: Local installation in case of no password for mysql root.

Version 9.0.0 (September 03, 2022)
- Update: To The latest Laravel v9.27.0 (Requires PHP >= 8.0).
- Feature: Add the ability to print datatable in dashboard
- Feature: Add the ability to export datatable to excel in dashboard
- Feature: add canonical feature to all site links
- Fix: Sending emails from draft issue.
- Fix: File manager links issue.

Version 9.1.0 (March 03, 2023)
- Update: To The latest Laravel v9.52.4 (Requires PHP >= 8.0).
- Update: Frontend and backend jQuery to v3.6.3
- Feature: Adding new drag and drop editor for page contents.
- Feature: Support bootstrap css on page editor view.
- Feature: Ability to disable automatic publish on page creation.
- Feature: Adding new Radio and checkbox field types.
- Feature: Convert any link to anchor automatically on custom fields.
- Feature: Use the link field for partners images on home page.
- Feature: Improve front page load speed and SEO.
- Feature: Add default header and footer in 404 page.
- Fix: User weak password not accepted issue alert issue.
- Fix: Fix unknown IP and country details in Analytics.
- Fix: Webmaster setting save failed issue if some apps disabled.
- Fix: Site title variable that was not shown with page title.
- Fix: Check file exist before deleting a language.
- Fix: Custom field ordering on list printing page.

Version 9.1.1 (March 18, 2023)
- Fix: Sending mail connection fail issue on some servers.
- Fix: Social login access token field limit issue.
- Fix: date time picker issue with latest jQuery update.
- Fix: disable double click on login button.
- Update: fullcalendar to latest version.

Version 10.0.0 (July 01, 2023)
- Update: To The latest Laravel v10.14.1 (Requires PHP >= 8.1).
- Fix: Add the full file path on File Manager  properties window.
- Fix: Add the full uel for files and images on tinymce wysiwyg Editor
- Fix: RSS issue on some site sections.
- Fix: Related topics issue if topic was deleted.
- Fix: Show the frontend footer always on the page end.
- Fix: Change Analytics page url column length to text.
- Feature: Add an internal Updater for quick system updating.
- Feature: Add the reCAPTCHA if activated to the login page.
- Feature: Add the ability to import data to any site section on dashboard.
- Feature: Return to the same page after changing the language on frontend.
- Feature: Add new type of site sections (Private with search page on frontend).
- Feature: Show the ID with every record on dashboard.
- Feature: Add share via Whatsapp button to topic view page.
- Feature: Add Português Language with full translation (Thanks to falecomluanbispo).

Version 10.0.1 (July 03, 2023)
- Fix: Adding new language error on the latest update.

Version 10.0.2 (July 09, 2023)
- Fix: Error on changing language from any language to the default language.
- Fix: Search page error if search result is empty.

Version 10.0.3 (February 23, 2024)
- Update: To The latest Laravel v10.44.0 (Requires PHP >= 8.1).
- Fix: Category defining on importing data to the site section.
- Fix: Add the translation of all languages to the date picker.
- Fix: Hide the language flag for one language websites
- Fix: Speedup loading for dashboard data tables on big data.
- Feature: Improve loading speed by indexing, caching config and route caching.
- Feature: Improve SEO and add nested slugs by section/category/topic.
- Feature: Rebuild frontend theme with bootstrap 5 support.
- Feature: Add more control of frontend theme colors with predefined sets.
- Feature: Ability to make the menu bar transparent over the homepage slider.
- Feature: Add custom video player for hosted video files.
- Feature: Add custom sound player for audio files.
- Feature: Add the FAQ section (Accordion View) type
- Feature: Add clone topics feature.
- Feature: Ability to add up to 3 levels on the main website menu.
- Feature: Ability to add up to 3 levels on categories.
- Feature: Ability to add an icon to any link on the website menu.
- Feature: Ability to set links to open in a new tab automatically.
- Feature: Ability to add a custom link for every language on the website menu.
- Feature: Support any language on page slugs.
- Feature: Add cover photo for site section, category or topic.
- Feature: Add Support to .webp extension on photos.
- Feature: Add optimize & resize feature for images on SEO settings.
- Feature: Show sitemap links on SEO settings.
- Feature: Ability to add html on close message on maintenance mode.
- Feature: Add custom route file and custom controller for any customization.
- Feature: Ability to overwrite any page by custom coded page.
- Feature: Add Table of content feature for CKEditor.
- Feature: Add Thread link on social media links.
- Feature: Ability to show a general search box on frontend header.
- Feature: Ability to show cookies policy notification.

Once again, thank you so much for purchasing this dashboard. As I said at the beginning, I'd be glad to help you if you have any questions relating to this dashboard. No guarantees, but I'll do my best to assist. If you have a more general question relating to the themes on ThemeForest, you might consider visiting the forums and asking your question in the "Item Discussion" section.

MMondi

Go To Table of Contents