Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
|
|
|
|
|
|
- Use load_class() to get objects during bootstrap process.
- Change load_class() to accept a class constructor parameter
instead of previously unused class name prefix.
- Change CI_Router::__construct() to accept as a parameter.
|
|
|
|
Update copyright notices from 2013 to 2014.
And update one calendar example in user_guide from year 2013/2014 to
2014/2015.
|
|
|
|
|
|
- Allow multiple levels of controller directories (supersedes PRs #390, #2439)
- Add support for per-directory 'defaul_controller' and '404_override' (resolves issue #2611; supersedes PR #939)
- Fixed a bug where default_controller was called instead of triggering 404 if the current route is inside a directory
- Removed a few calls from CI_Router to CI_URI that made a necessity for otherwise internal CI_URI methods to be public:
- Removed CI_URI::_fetch_uri_string() and moved its logic into CI_URI::__construct()
- Removed CI_URI::_remove_url_suffix, CI_URI::_explode_segments() and moved their logic into CI_URI::_set_uri_string()
- Removed CI_URI::_reindex_segments() altogether ( doesn't need further manipulation, while is
public anyway and can be properly (and more effectively) replaced on the spot)
|
|
Also did a tiny micro-optimization in the Utf8 class.
|
|
- Initialize and cache the value in the class constructor instead of searching for it every time
- Removed the preg_quote() call from _filter_uri() to allow more fine-tuning from configuration
- Renamed _filter_uri() to filter_uri() - it was public anyway and using it cannot break anything
Related: issue #2799
|
|
|
|
replace it
Calls to this function are often needed before the Input library is available
|
|
|
|
|
|
related to #2135
|
|
related to #2135
|
|
_fetch_uri_string(); use constant PHP_SAPI instead of function php_sapi_name()
|
|
Improved extensibility of the URI class
|
|
|
|
not force a specific list of valid options for `$which`, and (2) build the `$segment_array` and `$total_segments` dynamically regardless of the contents of `$which`.
Signed-off-by: Daniel Hunsaker <danhunsaker@gmail.com>
|
|
|
|
|
|
This fixes two bugs:
- for segments that ends with ".." e.g. /user/username../details, this should not be replaced
- current solution only replace double slashes, this solutions removes the infinite number of recurring slashes
|
|
|
|
|
|
Also partially fixes issue #1295, fixes inconsistencies in some page-level docblocks and adds include checks in language files.
|
|
(thanks to @sourcejedi, PR #1326)
Up until PHP 5.2.4 (which is our new lowest requirement),
there was a bug related to PATH_INFO which made REQUEST_URI
a more reliable choice. This is now no longer the case,
see https://bugs.php.net/bug.php?id=31892 for more details.
Also removed ORIG_PATH_INFO from the suggested alternatives
for uri_protocol in application/config/config.php as it will
not exist in most of PHP's recent versions and is pointless
when you can use PATH_INFO anyway.
|
|
f2b19fee7876708c7a7bb5cba6b7df682a9d2a53
|
|
(thanks to @sourcejedi, PR #1326 for pointing inconsistencies with RFC2616
|
|
|
|
(thanks to @sourcejedi, PR #1326 for most of the ideas)
- Renamed _detect_uri() and _parse_cli_args() to _parse_request_uri() and _parse_argv() respectively.
- Added _parse_query_string() which allows us to detect the URI path from QUERY_STRING much like it is done in _parse_request_uri().
(the above changes also allow for a simpler logic in the case where the *uri_protocol* setting is not set to 'AUTO')
- Updated application/config/config.php with a better list of the *uri_protocol* options.
- Added _reset_query_string() to aid in re-processing from the QUERY_STRING (utilized in _parse_request_uri() and _parse_query_string()).
|
|
(thanks to @sourcejedi, PR #1326)
For HTTP/1.1 compliance, RFC2616 specifies that both relative
and absolute URI formats must be accepted:
- http://localhost/path/ (absolute)
- /path/ (relative)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
that they don't differ from the rest
|
|
|
|
|
|
|
|
Read more about this change here:
http://codeigniter.com/forums/viewthread/215833
|