[920]
Small bugfix for after condition in AjaxHelper::remoteFunction
[922]
Fixed Ticket #224
Added patch from Ticket #221
Added patch from Ticket #222
Renamed renderMethod() to requestAction() the name fits better since we are really requesting another objects response.
Added a default setting to turn of autoRender for the class you are requesting the action from,
this will allow you to request an action and use the return how you like, instead of letting the object output the content
directly to the browser if it would normally do so.
[929]
Adding fix for Itcket #225.
Moved code for beforeFilters to first section of Controller::constructClasses().
Removed current implementaion of beforeFilters. This will be changed to pass
a reference of the object to the filters through a core filters class.
The core filter class will then load the filters and perform all request on the object in the order the
filters are arranged in var $beforeFilters, each beforeFilter needs to be a class that the core filter class will create
an instance of. If one of the filters fails, it will return the object, untouched and not try to process other filters, an
failed var will be set on the controller.
This will be done before data base is initialized for the current object that is being filtered.
Modifed the requestAction() changes are noted below
Using inside of a controller.
Default
$this->requestAction('/controller/action/argument/');
Request Object to render output directly
$this->requestAction('/controller/action/argument/', a('render'));
Using a helper object to make request inside of a view:
Default
$helpername->requestAction('/controller/action/argument/');
Request Object to render output directly
$helpername->requestAction('/controller/action/argument/', a('render'));
Using the View object "$this" in a view to make request:
$this->requestAction('/controller/action/argument/');
Request Object to render output directly
$this->requestAction('/controller/action/argument/', a('render'));
git-svn-id: https://svn.cakephp.org/repo/trunk/cake@930 3807eeeb-6ff5-0310-8944-8be069107fe0
[913]
Refactoring Dispatcher and Scaffold classes.
Removed Dispatcher::scaffoldView() and added it to
Scaffold::_scaffoldView() less coupling between the 2 classes now
[914]
Adding settings to fix issue when using get_class() in PHP 4.
If value of var $casedClas is set in controller this name will be Inflected to the proper table name if underscores are used
in the database.
[915]
Added suggestion from ticket #220
git-svn-id: https://svn.cakephp.org/repo/trunk/cake@917 3807eeeb-6ff5-0310-8944-8be069107fe0
Refactoring Dispatcher::dispatch() created a private Dispatcher::_invoke().
Removed code that was no longer used by Dispatcher
Refactored duplicate code in Object::renderMethod();
git-svn-id: https://svn.cakephp.org/repo/trunk/cake@912 3807eeeb-6ff5-0310-8944-8be069107fe0
[905]
Refactoring renderMethod() moving to object class to make it available to whole system
[908]
Bug fixes to ticket #219.
Added bug fixes I found in code.
Fixed Router::parse(); which only checked lower case strings
Refactored renderAction method. Moved to object class to allow all classes to access the method now.
This will allow a User object to make a request to a Permsissions object checking.
For example: You have a User object that needs to check its permission to access
User object would make are request to Permission object.
$accces = $this->renderAction('/permission/allow/userid/');
You would then be able to use the results of $access in your controller.
To check this in the view
$accces = $html->renderAction('/permission/allow/userid/');
Simple as that.
[906]
Added sortable() to AjaxHelper as a method of creating sortables,
and refactored a fair amount of the code.
[907]
Coding standard corrections.
removed blank line at end of paths.php file
git-svn-id: https://svn.cakephp.org/repo/trunk/cake@910 3807eeeb-6ff5-0310-8944-8be069107fe0
It looks like the way you where coding it was to be used as a Singleton.
In Controller::render() I am setting all View() attributed by pass reference.
I do not think it will effect other parts of the system.
You can see why I did this by uncommenting the print_r function in View::render().
Reload url in browser.
Then in Controller::render() remove the & from:
$view->autoRender =& $this->autoRender;
This is the only one that seems to cause array to print.
This may also caused in the Router::connect().
Look at this if you get time.
I noticed that each setting in the conf/routes.php file calls outer::connect();
Tee profiler show this happening 6 times on current install from trunk
Router::parse() is called 2 times.
We really need to get some good unit test in place.
Also speeded things up a little.
Profiler test:
Before changes on default install from trunk
Between:
Total Request Time: 13013.4 Milliseconds
Total Request Time: 13065.84 Milliseconds
28 files
After changes
Between:
Total Request Time: 10230.99 Milliseconds
Total Request Time: 10511.59 Milliseconds
27 files
git-svn-id: https://svn.cakephp.org/repo/trunk/cake@304 3807eeeb-6ff5-0310-8944-8be069107fe0
I am not finished with copying methods out of template.php, but it will come - also data validation would not be a problem helpers inclusion happens in the Template::_render().
Also, there was a bug with error functions (as Controller::missingView) - on linux, calling $this->render('../errors/missingController'); rsulted in an error - beacouse apparently is_file() cannot work with '..'. I added a simple fix in Template::_getViewFn.
I've also made some cleanups. Will continue to work tonight.
git-svn-id: https://svn.cakephp.org/repo/trunk/cake@264 3807eeeb-6ff5-0310-8944-8be069107fe0
- Time::daysAsSql returns SQL limits for a set of days, perhaps should be in DBO,
- cleanups
git-svn-id: https://svn.cakephp.org/repo/trunk/cake@259 3807eeeb-6ff5-0310-8944-8be069107fe0
The point is to provide custom error messages for Cake. As you will see, the quality of documentation is astounding.
git-svn-id: https://svn.cakephp.org/repo/trunk/cake@255 3807eeeb-6ff5-0310-8944-8be069107fe0
- Dispatcher sets a Controller::here variable with the real URL used to access the page, so that tag generators can that use an url (linkTo and formTag for example) use the real url, not guess it from the controller and action names which often fails
- Log class works more reliably and a LogError() shortcut function was added
- Nstring class added, to store string-related functions (there are just four yet, including a random password generator and an string-to-array splitter
- SimpleTest library (with Rephlux) included in /vendors; I've tweaked SimpleScorer::inCli() function, because it didn't work on my setup, it should work everywhere now (it checks for empty REQUEST_METHOD, which should only be empty in CLI)
git-svn-id: https://svn.cakephp.org/repo/trunk/cake@248 3807eeeb-6ff5-0310-8944-8be069107fe0
- Link tag generator fixed for compatibility with XHTML (& => &)
- prepare() and tables() methods renamed to prepareField() and tablesList() in database layers, prepare() and tables() meta-methods created in Model. The first one so that prepare() can accept both strings and arrays, the second one to fix Ticket #26 (case-sensitive table names didn't work for DB2).
- Few minor changes of includes() to requires() and the other way, to prevent unnecessary program terminations, and potential crashes.
- Time::toAtom() and Time::toRss() to format dates for XML feeds.
- Some code cleanups (unnecessary __construct()'s), also, I'm changing the parentheses into:
if (true)
{
}
I hope that's ok with everybody? I find it easier to understand code with that formatting. Does anyone know a highly configurable tool that would format PHP code automatically?
git-svn-id: https://svn.cakephp.org/repo/trunk/cake@241 3807eeeb-6ff5-0310-8944-8be069107fe0
- Controller accepts $params as a constructor parameter (for Larry).
- DBO::prepare() returned an array even when a string was passed to it, fixed.
- Flay and Folder tests fixed, DBO_Factory test disabled (no database config by default, so do database access to test).
-
git-svn-id: https://svn.cakephp.org/repo/trunk/cake@238 3807eeeb-6ff5-0310-8944-8be069107fe0
Larry, I've merged in _some_ of your changes, I'll merge in the scaffolding and joins code when you tell me it's ready. But I don't want to break how the Controller class works, can't we really do without the constructClasses() method call? Which reminds me, with your joins code, will we be able to use constructs like $user->post->findAll() and $user->post->save()?
Also, what are your changes to the DBO_MySQL class? I mean the mysqlResultSet(), and fetchResult() methods. I didn't see any MySQL-specific code inside them, perhaps they belong to the DBO class itself?
- I've changed the headers on user-editable files in /app and /config. I hope they will constitute a compromise between readability and legality. I've left file Id, copyright, and licence notices.
- /libs/basic.php::uses() function logs included files in global $loaded. Please, consider it a note to myself. Also, I've moved the NeatArray class out of the /libs/basics.php (into /libs/neat_array.php).
- Some cleanups in the Controller and Dispatcher classes.
- DBO::Prepare() accepts strings _and_ arrays now. It's a step towards a unified params theory.
- I think I've added some comments to DBO sub-classes, but it might have been Olle.
- A fix in Model class (findAll didn't work properly)
- Object's constructor sets $this->db to &DBO, which means all Object-descendand classes have default access to the database if it's connected. We need to clean up the code accordingly (some classes set their own $this->db references).
git-svn-id: https://svn.cakephp.org/repo/trunk/cake@236 3807eeeb-6ff5-0310-8944-8be069107fe0
- Helpers for controllers -- each controller has it's own helper in the /app/helpers directory
- /logs and /modules directories
- The application runs just fine without /config/database.php if controllers don't ask for db access
- Changed the name of /public/dispatch.php to /public/index.php, it's nicer and more standard, won't you agree? Kamil's fix for no-mod_rewrite needs to be re-implemented
- Cleanups, fixes, and even one or two comments ;)
git-svn-id: https://svn.cakephp.org/repo/trunk/cake@158 3807eeeb-6ff5-0310-8944-8be069107fe0
I've removed the author/licence information from some files -- such as app/app_controller.php and config/database.php -- as they are not our code and those files need to remain as clean as possible for people not to get lost in them.
I've run the tests on this one, but the tests are not as extensive as they should be. If you want to get the test controller etc. check out the version in my sandbox. But we'll probably be moving to SimpleTest soon anyway.
git-svn-id: https://svn.cakephp.org/repo/trunk/cake@114 3807eeeb-6ff5-0310-8944-8be069107fe0