Learn how to connect an HTML form to the database and email! It takes only 3 minutes. Read more

Author's Protection

We provide authors with unique tools ensuring the maximum protection of their IP rights. Every uploaded ZIP archive can be configured to perform following tasks:

Why?

How To

Save the configuration settings into the file about/protect.ini . The configuration syntax is straightforward:

; COMMENT
FILE=KEYWORD[,KEYWORD]

Example

Contents of the about/protect.ini file:

; My configuration
images/main.jpg=watermark
js/config.js=serial
js/jquery.myplugin.unpacked.js=notrial,serial

As the result of this configuration:

Embedding the License Number

License Number format for full versions:

WL-NNNNNN-MMMMMM

License Number format for trial versions:

W3-YYMMDD-HHMMSS

Expiration Warnings Tip

Since the Trial version License Number is in fact download timestamp you can use it in your scripts to detect the Trial version expiration.

Javascript Example

List your javascript file in the about/protect.ini with the keyword serial. Example of about/protect.ini

; Embed serial number into my test.js
test.js=serial

Then place following Javascript code into your test.js file:

// Will get replaced by real License Number if this file is
// listed in about/protect.ini with keyword "serial"
var licNum="WX-XXXXXX-XXXXXX";

if (licNum.match(/^W3/)) { // All Trial License Numbers start with 'W3'
    // Parse the Trial sesrial number into a Javascript date
	var dateStr=licNum.replace(/^W3-(..)(..)(..)-(..)(..)(..)$/, "20$1-$2-$3T$4:$5:$6Z");
	var dlDate=new Date(dateStr);
	
	// Expired?
	if (dlDate.getTime() &&  dlDate.getTime() + 30 * 24 * 3600000 < (new Date).getTime()) { 
		if (confirm('Hello World! Would you like to obtain a full version?')) {
			window.location="http://www.webdevelopers.eu/jquery/theatre/buy?trial=expired";
		}
	}
}