Skip to content
XoopsModules27xPublic

About

xContact module for XOOPS

Resources

Stars

1 star

Watchers

0 watching

Forks

Repository files navigation

xContact

A modern and flexible contact and form builder module for XOOPS CMS.

Overview

xContact is a powerful contact and form management module for XOOPS. It allows administrators to create multiple contact forms, collect submissions, manage requests, and notify responsible users by email.

The module is inspired by the original xcForm module and has been redesigned for current XOOPS versions with improved usability, a visual form builder, submission management, and modern UI support.


Features

Frontend

  • Unlimited contact forms
  • Drag & Drop form builder
  • Responsive Bootstrap-based templates
  • Custom field labels and descriptions
  • Required field validation
  • Honeypot spam protection
  • Email validation
  • Success and error messages
  • Multiple form types

Available Field Types

  • Short Text
  • Long Text
  • Email
  • Website URL
  • Phone Number
  • Number
  • Date
  • Time
  • File Upload
  • Hidden Field
  • Label
  • Heading
  • Paragraph
  • Checkbox Group
  • Image Choice
  • Dropdown List
  • Consent Checkbox (e.g. for GDPR)
  • Radio
  • Signature

Administration

  • Create and manage multiple forms
  • Visual Drag & Drop form designer
  • Submission management
  • Submission status tracking
  • Email notifications
  • Form activation/deactivation
  • Permissions management
  • Form preview

Notifications

  • Email notification on new submission
  • Configurable recipients
  • Custom email subjects
  • Submission details included in notification

Security

  • XOOPS Security Token validation
  • XMF Request filtering
  • Honeypot anti-spam protection
  • Input sanitization
  • Group permissions

UI Features

  • Font Awesome support
  • Unicode/Emoji icon fallback
  • Bootstrap-compatible templates
  • Mobile-friendly administration

Requirements

Component Version
XOOPS 2.7.x
PHP 8.2+
Bootstrap Theme 5+
MySQL / MariaDB Supported by XOOPS

Installation

  1. Download the latest release.
  2. Extract the archive.
  3. Upload the directory:
/modules/xcontact
  1. Login as Administrator.
  2. Open:
Administration → Modules
  1. Install xContact.
  2. Configure module preferences.
  3. Create your first form.

Upgrade

  1. Backup your database.
  2. Replace module files.
  3. Go to:
Administration → Modules
  1. Update the module.
  2. Verify preferences and permissions.

Quick Start

Create a Form

  1. Open:
Modules → xContact → Forms
  1. Click Add Form.

  2. Enter:

    • Name
    • Description
    • Notification Email
  3. Save.

Build Fields

  1. Open the Form Builder.

  2. Drag fields from the toolbox.

  3. Configure:

    • Label
    • Name
    • Placeholder
    • Width
    • Required option
  4. Save.

Display the Form

Insert the generated form block or use the provided template.


Form Builder

The visual form builder supports:

Drag & Drop

  • Reorder fields
  • Instant preview
  • Field settings panel

Layout Widths

  • Full Width (12)
  • Half Width (6)
  • Third Width (4)

Field Settings

  • Label
  • Internal Name
  • Placeholder
  • Description
  • Default Value
  • Required
  • Width
  • Options (for selectable fields)

Submission Management

Every submission is stored in the database.

Stored information:

  • Submission Date
  • Form ID
  • User IP Address
  • Status
  • Submitted Data

Status examples:

  • New
  • Read

Email Notifications

When a form is submitted:

  1. Submission is validated.
  2. Data is stored.
  3. Notification email is generated.
  4. Configured recipient receives the message.

Notification includes:

  • Form Name
  • Submission Date
  • IP Address
  • Submitted Values

Icon System

The module supports multiple icon providers.

Font Awesome

Recommended default option.

Unicode Icons

No external dependencies required.


Coding Standards

  • PSR-12
  • Strict Types
  • XMF Components
  • XOOPS Coding Guidelines

Folder Structure

xcontact/
├── admin/
├── assets/
├── blocks/
├── class/
├── include/
├── language/
├── templates/
├── uploads/
├── index.php
├── xoops_version.php
└── README.md

Contributing

Contributions are welcome.

Workflow

  1. Fork repository.
  2. Create feature branch.
  3. Commit changes.
  4. Submit Pull Request.

Please follow XOOPS coding standards.


Credits

XOOPS Project

XOOPS CMS Community and Contributors.


License

GPL-2.0-or-later

This module is distributed under the GNU General Public License.


Support

GitHub

Repository:

https://github.com/XoopsModules27x/xcontact

Issues

Please use GitHub Issues for bug reports and feature requests.

XOOPS Community

https://xoops.org


xContact — Flexible Contact and Form Management for XOOPS CMS

About

xContact module for XOOPS

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages