DCP-Portal update

by Andy Prevost

Saturday January 24 2026

DCP-Portal and ttCMS were withdrawn from the marketplace more than a decade ago. 

I am in process of completely re-writing DCP-Portal. It's a lot more than a simple code update. All the features are under re-evaluation, all the functionality improved for speed, and all the security upgraded. DCP-Portal previously supported multi-site installations from the same code base, mainly with database table prefixes. That continues ... and will also support multi-use installations. That means one site can support a public view and up to two other views (or control panels). One of those control panels is the admin control panel that supports all administrative and clerical functionality – that is the same as previous versions of DCP-Portal. The second control panel can be just about anything you want.

I'll be implementing the demo version as a staff hub. The hub as dedicated to staff, will also feature a referral section and include a recruiting section where candidates can apply for careers with your company ... and go through an entire process of uploading resumes, and complete a questionnaire that can save you time and effort that filter out un-qualified candidates without the need for a face-to-face interview. It will be initially used as a third-party tool (mine) that will offer qualified candidates to interested companies (and for a recruiting fee).

At this point in the development cycle, I have a new database abstraction module. It is inspired (and end-user code compatible) by a previous open source project (ez-SQL) and two newer open source project (both named ezDB).

The DCP-Portal re-write also is a perfect time to introduce a new templating engine. I've written about this before ... it's an open-source project that I had renamed. The name isn't that important anymore. It started life as Smart Template (note, NOT SmartyTemplate), was renamed to QSkin, then QuickSkin. It's back to qSkin. To make it clear, qSkin is mainly a tokenizer with templates and sub-templates. It also has some logic that are programming language like with logic controls, methods, and logic extensions. 

The public view requires no login credentials, no private data is available in the public view ... no database (or even a connection) is available in the public view. 

All other views are private and require a login. Previous versions of both DCP-Portal and ttCMS were simple login systems where a user presented an email address as a username, and a minimum 8-character password. Login was accepted if the two matched. One side effect of this simple login was the ability for a user to share email addresses and passwords with others ... even in different localities (even different countries). And it was abused.

The new login system gathers GPS information (GEO) about the user attempting a login – and implements a One-Time-Passcode (OTP) system. The way that works is that upon submitting login credentials, the system will validate the submitted data (as well as the user's GEO location) ... if it validates, the  OTP will email a code to the user's email address (as used to initially register) and forward the user to a verify page. The user will have approximately six minutes to complete the verify process ... that is, entering the code in the email sent to the user's email address.

I'll be going live with a website and examples shortly.

 

◀ Previous Next ▶

Post a Comment