In-Portal Issue Tracker

Welcome to the In-Portal Open Source CMS Issue Tracker! This is a central management / tracking tool for all types of tasks / issues / bugs for the In-Portal Project. Before reporting any issues, please make sure to read the Guide into Issue Tracker and How to Properly Test and Report Bugs!

Dependency Graph View Issue ] Relation Graph ] Vertical ]
related to child of duplicate of

Viewing Issue Simple Details
ID Category Type Reproducibility Date Submitted Last Update
0000098 [In-Portal CMS] Optimization feature request always 2009-06-19 16:09 2009-10-03 07:56
Reporter Dmitry View Status public  
Assigned To alex
Priority normal Resolution fixed  
Status closed      
Summary 0000098: Redo Mod-Rewrite for Better Flexibility
Description There is a need to redo our Mod-Rewrite mechanism from the ground to add more flexibility. Currently URL parsing closely tied up to Module Root Categories so they can't be nested in each other. Additionally it can't easily accept and work with any other URL elements besides Catalog Items. All these leads to lack of flexibility in current setup.

Proposing the following:

1. Each "Unit Config" file will have a new option - PassPriority (we already might have it). If option was specified then that particular Prefix instead of "env" variable (now) will be added to URL in a special way.

There will be 2 types of values:

"number" - order if which current Prefix will be processed in case if there are multiple similar prefixes exist in current URL.
"true" - order is not important, no matter if there are multiple similar prefixes - we just going to process it differently (from reg. env. var).

In case if URL contains Prefixes with both "numerical" and "non-numerical" (as described above) priorities - system will process "numerical first and then the rest. Also "numerical" can priority can be negative value.

2. In the process of building URLs each prefix will call for event (ie. OnPrepareRewriteUrl ) which will do the job.

3. During the step of building Unit Configs Cache for Application - all prefixes with PassPriority will be added in priority order into new property of kApplication class so it can be used when kModRewriteHelper will be parsing and breaking URL apart.

4. During URL parsing current kModRewriteHelper will be taking "language" and "theme" parts while passing through the rest of URL (in correct order) to registered Prefixes calling an event (ie. OnParseRewriteUrl ) for local parsing.
Additional Information

Web Development by Intechnic
In-Portal Open Source CMS
In-Portal Open Source CMS
Copyright © 2000 - 2009 MantisBT Group

Powered by Mantis Bugtracker