CustomPages by HeadHodge

[Free Add-on ] CustomPages by HeadHodge 1.0

No permission to download
  • Author XenForo Rocks
  • Creation date
    • You can download only 0 resources in 24 hours
    • You need more than 0 posts to download the resource
Compatible XF Versions
Liscensed under the MIT License (
Updates Duration
Visible Branding
CustomPages by HeadHodge
Includes two CustomPages: 'FileTool' and 'Hello'

I do volunteer database mgmt. and custom coding for The Kavaforums, a worthy non-profit organization.

During the course of my work, I developed a file tool that I use to make my job a little easier. I call it 'FileTool' (original isn't it?).

'FileTool' Screenshot:


The work I needed to do required me to learn how to work with the Xenforo framework. To help me learn, I developed a little test program that I use to experiment XF concepts. I call it 'Hello'. It's my rendition of the veritable time-honored hello program.

'Hello' Screenshot:


I had such a long learning curve with Xenforo, I thought I would share my code with the hopes that it may help others using the Xenforo framework.

Administrators may find this useful as a remote file tool. Developers and others may find this useful as a working example that demonstrates a variety of techniques I use to interface with the Xenforo framework.

I include my 'Hello' page for those who may be interested in a bare bones example of a CustomPage with a xf style overlay using Ajax/Json.

'File Tool' Features:
  • Traverse the Server File Structure.
  • Upload Files.
  • Cut, Copy, Paste Directories and Files.
  • Edit/Delete Directories and Files.
  • Unzip Files.

'File Tool' Techniques:
  • JQuery/Html:
    • Passing objects between client/server using Ajax/Json
    • Creating multpart forms with the HTML5 FormData object
    • Create a multipart post to upload FormData files
    • Encode/Decode binary data in a Json object
    • HTML5 'flex' elements for better layout control
    • Self invoking objects to isolate variables (Namespace)
  • JQuery-Tools:
    • Creating xf style overlays
  • JQuery-UI:
    • Dragging/Dropping Table Columns
    • Dragging/Resizing Table Columns
  • PHP:
    • Various file system functions (i.e. 'rename file', 'delete file')
    • Dynamic class loading
    • Unzipping files
    • Retrieving/Saving uploaded multipart form files
    • Encoding/Decoding binary data for Json objects
  • Xenforo:
    • Interfacing Page Nodes to a callback controller
    • Using a JSON View method to stringify objects to Json format
    • Using a RAW View method to return Html without templates
    • Using Callbacks in templates to inject Html into them.
    • Using $Visitor object to implement a security feature.

I distribute CustomPages freely to everyone under the MIT License (The MIT License (MIT) | Open Source Initiative).

If you find this tool useful please donate a little (or a lot) to The Kavaforums. It's a worthy non-profit. All donations go directly to them for the exclusive use of offsetting their operation costs to keep their valuable web site alive.

This is not a commercial product so I provide very limited support for it. You will get extra attention from me with any amount of Donations made toThe Kavaforums.



Download the and install the attached zip file.

Verify that the result installed:



Use the Admin CP to create a new Page of type Node (anywhere you like).

For the Page Node you use for FileTool:

Set the URL Portion field in the Page Node form needs to exactly the name 'FileTool' (see attachment).


Set the PHP Callback field in the Page Node form to: 'CustomPages_Controller :: getGuestReply' (see attachment)


For the Page Node you use for Hello:

Set the URL Portion field in the Page Node form needs to exactly the name 'Hello' (see attachment).


Set the PHP Callback field in the Page Node form to: 'CustomPages_Controller :: getGuestReply' (see attachment)

XenForo Rocks
First release
Last update
0.00 star(s) 0 ratings

More resources from XenForo Rocks