Thursday, October 31, 2013

ShellDispatcher help

I'm new to CakePHP.  My first install was 2.4.1, right before .2 came out.  I tried using Shell in .1 and got an error.  I also noticed the update the same time, so I went ahead and updated to .2.

I'm getting a syntax error when trying to run Console/cake.  

<b>Parse error</b>:  syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in <b>/home/content/15/10888415/html/flight/lib/Cake/Console/ShellDispatcher.php</b> on line <b>33</b><br />

Yes, a simple syntax error.  I HAVE NOT modified anything in the LIB directory.  Here is my entire ShellDispatcher.php file:

<?php
/**
 * ShellDispatcher file
 *
 * PHP 5
 *
 * CakePHP(tm) : Rapid Development Framework (http://cakephp.org)
 * Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
 *
 * Licensed under The MIT License
 * For full copyright and license information, please see the LICENSE.txt
 * Redistributions of files must retain the above copyright notice.
 *
 * @copyright     Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
 * @link          http://cakephp.org CakePHP(tm) Project
 * @since         CakePHP(tm) v 2.0
 * @license       http://www.opensource.org/licenses/mit-license.php MIT License
 */

/**
 * Shell dispatcher handles dispatching cli commands.
 *
 * @package       Cake.Console
 */
class ShellDispatcher {

/**
 * Contains command switches parsed from the command line.
 *
 * @var array
 */
public $params = array();

/**
 * Contains arguments parsed from the command line.
 *
 * @var array
 */
public $args = array();

/**
 * Constructor
 *
 * The execution of the script is stopped after dispatching the request with
 * a status code of either 0 or 1 according to the result of the dispatch.
 *
 * @param array $args the argv from PHP
 * @param boolean $bootstrap Should the environment be bootstrapped.
 */
public function __construct($args = array(), $bootstrap = true) {
set_time_limit(0);
$this->parseParams($args);

if ($bootstrap) {
$this->_initConstants();
$this->_initEnvironment();
}
}

/**
 * Run the dispatcher
 *
 * @param array $argv The argv from PHP
 * @return void
 */
public static function run($argv) {
$dispatcher = new ShellDispatcher($argv);
return $dispatcher->_stop($dispatcher->dispatch() === false ? 1 : 0);
}

/**
 * Defines core configuration.
 *
 * @return void
 */
protected function _initConstants() {
if (function_exists('ini_set')) {
ini_set('html_errors', false);
ini_set('implicit_flush', true);
ini_set('max_execution_time', 0);
}

if (!defined('CAKE_CORE_INCLUDE_PATH')) {
define('DS', DIRECTORY_SEPARATOR);
define('CAKE_CORE_INCLUDE_PATH', dirname(dirname(dirname(__FILE__))));
define('CAKEPHP_SHELL', true);
if (!defined('CORE_PATH')) {
define('CORE_PATH', CAKE_CORE_INCLUDE_PATH . DS);
}
}
}

/**
 * Defines current working environment.
 *
 * @return void
 * @throws CakeException
 */
protected function _initEnvironment() {
if (!$this->_bootstrap()) {
$message = "Unable to load CakePHP core.\nMake sure " . DS . 'lib' . DS . 'Cake exists in ' . CAKE_CORE_INCLUDE_PATH;
throw new CakeException($message);
}

if (!isset($this->args[0]) || !isset($this->params['working'])) {
$message = "This file has been loaded incorrectly and cannot continue.\n" .
"Please make sure that " . DS . 'lib' . DS . 'Cake' . DS . "Console is in your system path,\n" .
"and check the cookbook for the correct usage of this command.\n" .
"(http://book.cakephp.org/)";
throw new CakeException($message);
}

$this->shiftArgs();
}

/**
 * Initializes the environment and loads the CakePHP core.
 *
 * @return boolean Success.
 */
protected function _bootstrap() {
if (!defined('ROOT')) {
define('ROOT', $this->params['root']);
}
if (!defined('APP_DIR')) {
define('APP_DIR', $this->params['app']);
}
if (!defined('APP')) {
define('APP', $this->params['working'] . DS);
}
if (!defined('WWW_ROOT')) {
define('WWW_ROOT', APP . $this->params['webroot'] . DS);
}
if (!defined('TMP') && !is_dir(APP . 'tmp')) {
define('TMP', CAKE_CORE_INCLUDE_PATH . DS . 'Cake' . DS . 'Console' . DS . 'Templates' . DS . 'skel' . DS . 'tmp' . DS);
}
$boot = file_exists(ROOT . DS . APP_DIR . DS . 'Config' . DS . 'bootstrap.php');
require CORE_PATH . 'Cake' . DS . 'bootstrap.php';

if (!file_exists(APP . 'Config' . DS . 'core.php')) {
include_once CAKE_CORE_INCLUDE_PATH . DS . 'Cake' . DS . 'Console' . DS . 'Templates' . DS . 'skel' . DS . 'Config' . DS . 'core.php';
App::build();
}

$this->setErrorHandlers();

if (!defined('FULL_BASE_URL')) {
$url = Configure::read('App.fullBaseUrl');
define('FULL_BASE_URL', $url ? $url : 'http://localhost');
Configure::write('App.fullBaseUrl', FULL_BASE_URL);
}

return true;
}

/**
 * Set the error/exception handlers for the console
 * based on the `Error.consoleHandler`, and `Exception.consoleHandler` values
 * if they are set. If they are not set, the default ConsoleErrorHandler will be
 * used.
 *
 * @return void
 */
public function setErrorHandlers() {
App::uses('ConsoleErrorHandler', 'Console');
$error = Configure::read('Error');
$exception = Configure::read('Exception');

$errorHandler = new ConsoleErrorHandler();
if (empty($error['consoleHandler'])) {
$error['consoleHandler'] = array($errorHandler, 'handleError');
Configure::write('Error', $error);
}
if (empty($exception['consoleHandler'])) {
$exception['consoleHandler'] = array($errorHandler, 'handleException');
Configure::write('Exception', $exception);
}
set_exception_handler($exception['consoleHandler']);
set_error_handler($error['consoleHandler'], Configure::read('Error.level'));
}

/**
 * Dispatches a CLI request
 *
 * @return boolean
 * @throws MissingShellMethodException
 */
public function dispatch() {
$shell = $this->shiftArgs();

if (!$shell) {
$this->help();
return false;
}
if (in_array($shell, array('help', '--help', '-h'))) {
$this->help();
return true;
}

$Shell = $this->_getShell($shell);

$command = null;
if (isset($this->args[0])) {
$command = $this->args[0];
}

if ($Shell instanceof Shell) {
$Shell->initialize();
return $Shell->runCommand($command, $this->args);
}
$methods = array_diff(get_class_methods($Shell), get_class_methods('Shell'));
$added = in_array($command, $methods);
$private = $command[0] === '_' && method_exists($Shell, $command);

if (!$private) {
if ($added) {
$this->shiftArgs();
$Shell->startup();
return $Shell->{$command}();
}
if (method_exists($Shell, 'main')) {
$Shell->startup();
return $Shell->main();
}
}

throw new MissingShellMethodException(array('shell' => $shell, 'method' => $command));
}

/**
 * Get shell to use, either plugin shell or application shell
 *
 * All paths in the loaded shell paths are searched.
 *
 * @param string $shell Optionally the name of a plugin
 * @return mixed An object
 * @throws MissingShellException when errors are encountered.
 */
protected function _getShell($shell) {
list($plugin, $shell) = pluginSplit($shell, true);

$plugin = Inflector::camelize($plugin);
$class = Inflector::camelize($shell) . 'Shell';

App::uses('Shell', 'Console');
App::uses('AppShell', 'Console/Command');
App::uses($class, $plugin . 'Console/Command');

if (!class_exists($class)) {
throw new MissingShellException(array(
'class' => $class
));
}
$Shell = new $class();
$Shell->plugin = trim($plugin, '.');
return $Shell;
}

/**
 * Parses command line options and extracts the directory paths from $params
 *
 * @param array $args Parameters to parse
 * @return void
 */
public function parseParams($args) {
$this->_parsePaths($args);

$defaults = array(
'app' => 'app',
'root' => dirname(dirname(dirname(dirname(__FILE__)))),
'working' => null,
'webroot' => 'webroot'
);
$params = array_merge($defaults, array_intersect_key($this->params, $defaults));
$isWin = false;
foreach ($defaults as $default => $value) {
if (strpos($params[$default], '\\') !== false) {
$isWin = true;
break;
}
}
$params = str_replace('\\', '/', $params);

if (isset($params['working'])) {
$params['working'] = trim($params['working']);
}

if (!empty($params['working']) && (!isset($this->args[0]) || isset($this->args[0]) && $this->args[0][0] !== '.')) {
if ($params['working'][0] === '.') {
$params['working'] = realpath($params['working']);
}
if (empty($this->params['app']) && $params['working'] != $params['root']) {
$params['root'] = dirname($params['working']);
$params['app'] = basename($params['working']);
} else {
$params['root'] = $params['working'];
}
}

if ($params['app'][0] === '/' || preg_match('/([a-z])(:)/i', $params['app'], $matches)) {
$params['root'] = dirname($params['app']);
} elseif (strpos($params['app'], '/')) {
$params['root'] .= '/' . dirname($params['app']);
}

$params['app'] = basename($params['app']);
$params['working'] = rtrim($params['root'], '/');
if (!$isWin || !preg_match('/^[A-Z]:$/i', $params['app'])) {
$params['working'] .= '/' . $params['app'];
}

if (!empty($matches[0]) || !empty($isWin)) {
$params = str_replace('/', '\\', $params);
}

$this->params = array_merge($this->params, $params);
}

/**
 * Parses out the paths from from the argv
 *
 * @param array $args
 * @return void
 */
protected function _parsePaths($args) {
$parsed = array();
$keys = array('-working', '--working', '-app', '--app', '-root', '--root');
foreach ($keys as $key) {
while (($index = array_search($key, $args)) !== false) {
$keyname = str_replace('-', '', $key);
$valueIndex = $index + 1;
$parsed[$keyname] = $args[$valueIndex];
array_splice($args, $index, 2);
}
}
$this->args = $args;
$this->params = $parsed;
}

/**
 * Removes first argument and shifts other arguments up
 *
 * @return mixed Null if there are no arguments otherwise the shifted argument
 */
public function shiftArgs() {
return array_shift($this->args);
}

/**
 * Shows console help. Performs an internal dispatch to the CommandList Shell
 *
 * @return void
 */
public function help() {
$this->args = array_merge(array('command_list'), $this->args);
$this->dispatch();
}

/**
 * Stop execution of the current script
 *
 * @param integer|string $status see http://php.net/exit for values
 * @return void
 */
protected function _stop($status = 0) {
exit($status);
}

}

>?


Line 33 is actually blank.  Line 32 looks to be complete.  I for the life of me can't figure out what's causing the syntax error, and am perplexed as it came that way.  Has no one else had this problem?

Thanks in advance for your help!




--
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP
 
---
You received this message because you are subscribed to the Google Groups "CakePHP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cake-php+unsubscribe@googlegroups.com.
To post to this group, send email to cake-php@googlegroups.com.
Visit this group at http://groups.google.com/group/cake-php.
For more options, visit https://groups.google.com/groups/opt_out.

CakePHP 1.3: How to display form validation error messages when form is not tied to a model?

I have a view where I used FormHelper methods ($this->Form->input, etc.) to create a form (post), but this form is not tied to any model.  It's a dumb form.  

For example, some fields are date fields.  My controller will do some validation on these fields, but if there is a problem, how would I display the error message right below the field that had a validation error?  With forms tied to models, CakePHP will automagically add a div to the relevant field to display the validation error message.  Is there something similar for dumb forms?

Thank you for the assistance.


--
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP
 
---
You received this message because you are subscribed to the Google Groups "CakePHP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cake-php+unsubscribe@googlegroups.com.
To post to this group, send email to cake-php@googlegroups.com.
Visit this group at http://groups.google.com/group/cake-php.
For more options, visit https://groups.google.com/groups/opt_out.

Cakephp blog tutorial error

Hi there,

I followed this tutorial, everything is working fine apart from the "edit method" when click the edit link it gives following warning message. I am new to cakephp and php. 

Warning (2): strtolower() expects parameter 1 to be string, array given [CORE/Cake/Network/CakeRequest.php, line 471]
Code Context
$type = array(  	(int) 0 => 'post',  	(int) 1 => 'put'  )  $this = object(CakeRequest) {  	params => array(  		'plugin' => null,  		'controller' => 'posts',  		'action' => 'edit',  		'named' => array([maximum depth reached]),  		'pass' => array(  			[maximum depth reached]  		)  	)  	data => array()  	query => array()  	url => 'posts/edit/2'  	base => '/cake_2_0'  	webroot => '/cake_2_0/'  	here => '/cake_2_0/posts/edit/2'  }
strtolower - [internal], line ??  CakeRequest::is() - CORE/Cake/Network/CakeRequest.php, line 471  PostsController::edit() - APP/Controller/PostsController.php, line 48  ReflectionMethod::invokeArgs() - [internal], line ??  Controller::invokeAction() - CORE/Cake/Controller/Controller.php, line 485  Dispatcher::_invoke() - CORE/Cake/Routing/Dispatcher.php, line 186  Dispatcher::dispatch() - CORE/Cake/Routing/Dispatcher.php, line 161  [main] - APP/webroot/index.php, line 92

--
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP
 
---
You received this message because you are subscribed to the Google Groups "CakePHP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cake-php+unsubscribe@googlegroups.com.
To post to this group, send email to cake-php@googlegroups.com.
Visit this group at http://groups.google.com/group/cake-php.
For more options, visit https://groups.google.com/groups/opt_out.

Re: Is it possible to retrieve webroot folder location in Javascript?

What are you using this for?
If you just want to access files under it from the browser - it will always be "example.com/file.name".
Also the chance that the webroot location changes inside Cake's layout is like limes(0) :D.

On Wednesday, 30 October 2013 01:08:30 UTC+2, Sam wrote:
I am writing javascript with jquery currently. Is it possible to retrieve webroot folder location in Javascript? This will be good if webroot changes in future.

Thank you.

--
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP
 
---
You received this message because you are subscribed to the Google Groups "CakePHP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cake-php+unsubscribe@googlegroups.com.
To post to this group, send email to cake-php@googlegroups.com.
Visit this group at http://groups.google.com/group/cake-php.
For more options, visit https://groups.google.com/groups/opt_out.

Wednesday, October 30, 2013

Re: Cake 2: Very confusing docs/tutorials... Is there another foolproof source?

With regards to admin routing, it looks like you're interested in doing prefix routing.  

As listed here [http://book.cakephp.org/2.0/en/development/routing.html#prefix-routing], you'll need to do the following:

Set up admin as a routing prefix in app/Config/core.php

Add the admin_ prefix to any controller functions that should only be accessible via the admin URL (i.e. /admin/users/index would have a admin_index() in UsersController, and corresponding app/Views/Users/admin_index.ctp)

That is all you should need to do, though if you want to set up /admin to default to a specific page, then use the second code example in the link (the one setting up Router::connect('/admin', ... ).

Should I have a separate login code for my administration section ?

That's an application specific question, rather than a framework question.  A framework question would be "How can I implement distinct authentication for my admin routes?" (assuming you've decided that is what you want to do).  That one I can't answer, because I've never had to do it.  I usually have roles associated with the user, and if they have an Administration role, or something similar, I will redirect to the /admin URL when the user logs in.  Development is easier if there's just one list of users, however, if you have a business requirement for seperate logins, you may even want to consider having a separate administration app and use plugins for functionality that is common between the public and the admin apps.  By having individual apps, you won't need to be concerned with admin routing, either.

Should I be creating an AdminController or do I still admin functions in all my controllers  (aka admin_index,admin_edit,admin_delete).

For the sake of argument, lets say you are sticking with a single app for public and admin, and you have prefix routing working, then you shouldn't need an AdminController.  It should be enough to just prefix controllers. Plus, if you has an AdminController that handled all admin actions, it would end up being a bit of a god object, and when it comes to maintenance, you will have a bad time. You'd have to have an index for each model you want an index for, and that would start to break convention, and get you in a bad mood when nothing works they way you expect it to work.

How to build a category manager in the administration section ?   Should I be using someone's plugin/helper from github ?

If you can find a category manager that does the job for you, does what you want/need and has the appropriate license, then use it! If you find a helper that does what you need or help, use that too!  As with any software, it's your judgement call as to other things like support, and trustworthyness.  At the very least, have a look at the source code to see how it works, and if it is doing anything nefarious or has security holes.

I've found the examples in the book very handy.  I've also found the tests in CakePHP handy, if you're wondering how to use a particular function.

CakePHP is a tool. It's a mallet, it's a brick, it's a trowel, it's mortar, it's wood, it's nails. It's up to you to put those things together make the application.  I'd welcome you to take a look at other MVC frameworks such as Symphony2, Code Igniter, ASP.NET MVC and Django (to name a few), and see if they give you the same answers you're after with CakePHP.  MVC development is all much of a sameness, with quirks between the different frameworks.  I reckon CakePHP does a lot of things right, and gets better with each release.



On Wed, Oct 30, 2013 at 11:41 PM, Silver Troy <educatedrisk@gmail.com> wrote:
I have been reading the cakephp book, looking on youtube, googling any examples I can for the past 3 weeks. 
Feel like I am banging my head against the wall and could easily do this stuff outside the framework.

The documentation is lacking real examples that beginners could actually build on.

I have hacked together a front end to my test website, a front end user section and an admin section (still can't route  to
it properly). 

Should I have a separate login code for my administration section ?

Should I be creating an AdminController or do I still admin functions in all my controllers  (aka admin_index,admin_edit,admin_delete).

How to build a category manager in the administration section ?   Should I be using someone's plugin/helper from github ? 

They should really attempt to put together a tutorial site that shows more than the blog example. 
A website that has a user registration, login, profile section.  Listing of products or articles and an administration
section would be something very valuable to all beginners.

 I do see the potential benefits of cakephp but finding decent best practices (examples)  on the internet is pretty bad.  Considering
cakephp 2.x was released 2 years ago or so? 

Not to mention I am already reading about cakephp 3.0   .   Maybe a concentrated effort to develop 20,50, 100 best practice examples for
cakephp 3.0  would be very beneficial.




On Wednesday, October 30, 2013 6:45:02 AM UTC-4, euromark wrote:
Silver Troy: Mark Story != dereuromark ;)

Most beginners find the book sufficient - and properly explaining the basics.


Am Mittwoch, 30. Oktober 2013 05:30:20 UTC+1 schrieb Silver Troy:
I have to agree with the above comments about trying to find real examples with cakephp 2.x.

The cakephp youtube channel doesn't give you any video examples on simple concepts.

The documentation has a lot of useful information, but little examples to put them into action.

Doing the blog tutorial example was pretty quick and easy.  Adding authentication the Andrew perkins
youtube videos were good. 

But seriously Cakephp you need to develop some real world simple examples.  Cause its frustrating
as a php developer to be attempting to figure out how to properly code inside of cakephp's framework.

I read the documentation, the bakery, youtube videos, google for tutorials. 

But can I find a simple menu building example ?
How to build an admin section with proper routing ?
How to connection with hasOne, hasMany ?
Building a category tree that lists products in each level with paging ?

Oh I have read over Mark Story's Tree Behavior article and attempted to install his "Tools" plugin ..
but trying to get a working example .... sigh.   Should I really have to install someone else's plugin
to build a category system in a website ?

Quite the frustration is trying to learn this framework ... spinning my wheels.

Yes I tried the irc channel and basically the first person to respond made me feel like an idiot ... not impressed
and then basically linked a bunch of the book.cakephp.org sections .. which I have already read that don't give a proper working example or stop just short of the basic functionality.

 

--
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP
 
---
You received this message because you are subscribed to a topic in the Google Groups "CakePHP" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/cake-php/j9Oi4GJQl_0/unsubscribe.
To unsubscribe from this group and all its topics, send an email to cake-php+unsubscribe@googlegroups.com.
To post to this group, send email to cake-php@googlegroups.com.
Visit this group at http://groups.google.com/group/cake-php.
For more options, visit https://groups.google.com/groups/opt_out.

--
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP
 
---
You received this message because you are subscribed to the Google Groups "CakePHP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cake-php+unsubscribe@googlegroups.com.
To post to this group, send email to cake-php@googlegroups.com.
Visit this group at http://groups.google.com/group/cake-php.
For more options, visit https://groups.google.com/groups/opt_out.

Re: Cake 2: Very confusing docs/tutorials... Is there another foolproof source?

I have been reading the cakephp book, looking on youtube, googling any examples I can for the past 3 weeks. 
Feel like I am banging my head against the wall and could easily do this stuff outside the framework.

The documentation is lacking real examples that beginners could actually build on.

I have hacked together a front end to my test website, a front end user section and an admin section (still can't route  to
it properly). 

Should I have a separate login code for my administration section ?

Should I be creating an AdminController or do I still admin functions in all my controllers  (aka admin_index,admin_edit,admin_delete).

How to build a category manager in the administration section ?   Should I be using someone's plugin/helper from github ? 

They should really attempt to put together a tutorial site that shows more than the blog example. 
A website that has a user registration, login, profile section.  Listing of products or articles and an administration
section would be something very valuable to all beginners.

 I do see the potential benefits of cakephp but finding decent best practices (examples)  on the internet is pretty bad.  Considering
cakephp 2.x was released 2 years ago or so? 

Not to mention I am already reading about cakephp 3.0   .   Maybe a concentrated effort to develop 20,50, 100 best practice examples for
cakephp 3.0  would be very beneficial.



On Wednesday, October 30, 2013 6:45:02 AM UTC-4, euromark wrote:
Silver Troy: Mark Story != dereuromark ;)

Most beginners find the book sufficient - and properly explaining the basics.


Am Mittwoch, 30. Oktober 2013 05:30:20 UTC+1 schrieb Silver Troy:
I have to agree with the above comments about trying to find real examples with cakephp 2.x.

The cakephp youtube channel doesn't give you any video examples on simple concepts.

The documentation has a lot of useful information, but little examples to put them into action.

Doing the blog tutorial example was pretty quick and easy.  Adding authentication the Andrew perkins
youtube videos were good. 

But seriously Cakephp you need to develop some real world simple examples.  Cause its frustrating
as a php developer to be attempting to figure out how to properly code inside of cakephp's framework.

I read the documentation, the bakery, youtube videos, google for tutorials. 

But can I find a simple menu building example ?
How to build an admin section with proper routing ?
How to connection with hasOne, hasMany ?
Building a category tree that lists products in each level with paging ?

Oh I have read over Mark Story's Tree Behavior article and attempted to install his "Tools" plugin ..
but trying to get a working example .... sigh.   Should I really have to install someone else's plugin
to build a category system in a website ?

Quite the frustration is trying to learn this framework ... spinning my wheels.

Yes I tried the irc channel and basically the first person to respond made me feel like an idiot ... not impressed
and then basically linked a bunch of the book.cakephp.org sections .. which I have already read that don't give a proper working example or stop just short of the basic functionality.

 

--
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP
 
---
You received this message because you are subscribed to the Google Groups "CakePHP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cake-php+unsubscribe@googlegroups.com.
To post to this group, send email to cake-php@googlegroups.com.
Visit this group at http://groups.google.com/group/cake-php.
For more options, visit https://groups.google.com/groups/opt_out.

Re: Cake 2: Very confusing docs/tutorials... Is there another foolproof source?

Silver Troy: Mark Story != dereuromark ;)

Most beginners find the book sufficient - and properly explaining the basics.


Am Mittwoch, 30. Oktober 2013 05:30:20 UTC+1 schrieb Silver Troy:
I have to agree with the above comments about trying to find real examples with cakephp 2.x.

The cakephp youtube channel doesn't give you any video examples on simple concepts.

The documentation has a lot of useful information, but little examples to put them into action.

Doing the blog tutorial example was pretty quick and easy.  Adding authentication the Andrew perkins
youtube videos were good. 

But seriously Cakephp you need to develop some real world simple examples.  Cause its frustrating
as a php developer to be attempting to figure out how to properly code inside of cakephp's framework.

I read the documentation, the bakery, youtube videos, google for tutorials. 

But can I find a simple menu building example ?
How to build an admin section with proper routing ?
How to connection with hasOne, hasMany ?
Building a category tree that lists products in each level with paging ?

Oh I have read over Mark Story's Tree Behavior article and attempted to install his "Tools" plugin ..
but trying to get a working example .... sigh.   Should I really have to install someone else's plugin
to build a category system in a website ?

Quite the frustration is trying to learn this framework ... spinning my wheels.

Yes I tried the irc channel and basically the first person to respond made me feel like an idiot ... not impressed
and then basically linked a bunch of the book.cakephp.org sections .. which I have already read that don't give a proper working example or stop just short of the basic functionality.

 

--
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP
 
---
You received this message because you are subscribed to the Google Groups "CakePHP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cake-php+unsubscribe@googlegroups.com.
To post to this group, send email to cake-php@googlegroups.com.
Visit this group at http://groups.google.com/group/cake-php.
For more options, visit https://groups.google.com/groups/opt_out.

Re: cakephp

  • MySQL 
  • PostgreSQL
  • Microsoft SQL Server
  • SQLite

On Wednesday, October 30, 2013 2:59:06 AM UTC-4, karthik...@gmail.com wrote:
what are the drawbacks in cakephp?
list out the supported databases?

--
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP
 
---
You received this message because you are subscribed to the Google Groups "CakePHP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cake-php+unsubscribe@googlegroups.com.
To post to this group, send email to cake-php@googlegroups.com.
Visit this group at http://groups.google.com/group/cake-php.
For more options, visit https://groups.google.com/groups/opt_out.

Re: cakephp

No drawbacks... use Mysql for database..


On Wed, Oct 30, 2013 at 12:29 PM, <karthik2951990@gmail.com> wrote:
what are the drawbacks in cakephp?
list out the supported databases?

--
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP
 
---
You received this message because you are subscribed to the Google Groups "CakePHP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cake-php+unsubscribe@googlegroups.com.
To post to this group, send email to cake-php@googlegroups.com.
Visit this group at http://groups.google.com/group/cake-php.
For more options, visit https://groups.google.com/groups/opt_out.

--
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP
 
---
You received this message because you are subscribed to the Google Groups "CakePHP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cake-php+unsubscribe@googlegroups.com.
To post to this group, send email to cake-php@googlegroups.com.
Visit this group at http://groups.google.com/group/cake-php.
For more options, visit https://groups.google.com/groups/opt_out.

Tuesday, October 29, 2013

cakephp

what are the drawbacks in cakephp?
list out the supported databases?

--
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP
 
---
You received this message because you are subscribed to the Google Groups "CakePHP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cake-php+unsubscribe@googlegroups.com.
To post to this group, send email to cake-php@googlegroups.com.
Visit this group at http://groups.google.com/group/cake-php.
For more options, visit https://groups.google.com/groups/opt_out.

Re: Is it possible to retrieve webroot folder location in Javascript?

Not sure if it's the approved way, but I do this:

<script>
var baseUrl = '<?php echo $this->Html->url('/', true); ?>';
</script>

...before I load jQuery, which means I can use the baseUrl variable.




Jeremy Burns
Class Outfit

http://www.classoutfit.com

On 30 Oct 2013, at 01:43, Sam <lightaiyee@gmail.com> wrote:

I use the following <?php echo $this->webroot; ?> to retrieve the webroot location in cakephp. I wonder how one can use Cakephp to retrieve webroot location in Javascript.

On Wednesday, October 30, 2013 7:08:30 AM UTC+8, Sam wrote:
I am writing javascript with jquery currently. Is it possible to retrieve webroot folder location in Javascript? This will be good if webroot changes in future.

Thank you.

--
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP
 
---
You received this message because you are subscribed to the Google Groups "CakePHP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cake-php+unsubscribe@googlegroups.com.
To post to this group, send email to cake-php@googlegroups.com.
Visit this group at http://groups.google.com/group/cake-php.
For more options, visit https://groups.google.com/groups/opt_out.

Re: Cake 2: Very confusing docs/tutorials... Is there another foolproof source?

I have to agree with the above comments about trying to find real examples with cakephp 2.x.

The cakephp youtube channel doesn't give you any video examples on simple concepts.

The documentation has a lot of useful information, but little examples to put them into action.

Doing the blog tutorial example was pretty quick and easy.  Adding authentication the Andrew perkins
youtube videos were good. 

But seriously Cakephp you need to develop some real world simple examples.  Cause its frustrating
as a php developer to be attempting to figure out how to properly code inside of cakephp's framework.

I read the documentation, the bakery, youtube videos, google for tutorials. 

But can I find a simple menu building example ?
How to build an admin section with proper routing ?
How to connection with hasOne, hasMany ?
Building a category tree that lists products in each level with paging ?

Oh I have read over Mark Story's Tree Behavior article and attempted to install his "Tools" plugin ..
but trying to get a working example .... sigh.   Should I really have to install someone else's plugin
to build a category system in a website ?

Quite the frustration is trying to learn this framework ... spinning my wheels.

Yes I tried the irc channel and basically the first person to respond made me feel like an idiot ... not impressed
and then basically linked a bunch of the book.cakephp.org sections .. which I have already read that don't give a proper working example or stop just short of the basic functionality.

 

--
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP
 
---
You received this message because you are subscribed to the Google Groups "CakePHP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cake-php+unsubscribe@googlegroups.com.
To post to this group, send email to cake-php@googlegroups.com.
Visit this group at http://groups.google.com/group/cake-php.
For more options, visit https://groups.google.com/groups/opt_out.

Updating data in real-time on table using Cakephp-DataTables

I stumbled onto a good tool that simplifies using jquery datatables on cakephp. (Demo website cakephpdatatables.cnizz.com). However, I would like to update my data in real-time because my data is live and changes by the minute. Can someone point me to some samples on the internet or some place to start for this feature? 

Thank you.

--
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP
 
---
You received this message because you are subscribed to the Google Groups "CakePHP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cake-php+unsubscribe@googlegroups.com.
To post to this group, send email to cake-php@googlegroups.com.
Visit this group at http://groups.google.com/group/cake-php.
For more options, visit https://groups.google.com/groups/opt_out.

Re: Is it possible to retrieve webroot folder location in Javascript?

I use the following <?php echo $this->webroot; ?> to retrieve the webroot location in cakephp. I wonder how one can use Cakephp to retrieve webroot location in Javascript.

On Wednesday, October 30, 2013 7:08:30 AM UTC+8, Sam wrote:
I am writing javascript with jquery currently. Is it possible to retrieve webroot folder location in Javascript? This will be good if webroot changes in future.

Thank you.

--
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP
 
---
You received this message because you are subscribed to the Google Groups "CakePHP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cake-php+unsubscribe@googlegroups.com.
To post to this group, send email to cake-php@googlegroups.com.
Visit this group at http://groups.google.com/group/cake-php.
For more options, visit https://groups.google.com/groups/opt_out.

Is it possible to retrieve webroot folder location in Javascript?

I am writing javascript with jquery currently. Is it possible to retrieve webroot folder location in Javascript? This will be good if webroot changes in future.

Thank you.

--
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP
 
---
You received this message because you are subscribed to the Google Groups "CakePHP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cake-php+unsubscribe@googlegroups.com.
To post to this group, send email to cake-php@googlegroups.com.
Visit this group at http://groups.google.com/group/cake-php.
For more options, visit https://groups.google.com/groups/opt_out.

CakePHP 1.3 - Plugin asset loading - override Core.php compression rewrite

I'm working with an existing CakePHP (ver. 1.3) application.  The main application utilizes CSS and JS compression via the /config/core.php file.  My project is to develop proprietary functionality into this application which I'm integrating as a CakePHP plugin.  Now there have been very few hitches while developing as a Plugin, but the issue below is one that I haven't been able to locate a solution for.

Since the compression config option is enabled in the main CakePHP core.php file, anytime I try to load CSS or JS within the plugin files to it's internal plugin assets location (/app/plugins/plugin_name/webroot/) it's automatically rewriting the folder to the cached folder "/plugin_name/webroot/ccss" or "/plugin_name/webroot/cjs" as it's supposed to for the main application.  This is the case regardless if I load via the cake helpers or using standard tagging.

Now I do not have any issues loading plugin image assets using the helper and the plugin path "/plugin_name/img/".  So, I can only assume that this is all related to the rewriting of the CSS and JS paths for the compression option.

So, is there a way to override the path rewriting for the plugin assets?  
Can my plugin define it's own config to compress its CSS and JS files separately (this would be nice to implement later on, but not necessary)?
Am I just completely off-base with my approach to this situation altogether, lol?

I would like to keep all the plugin files (including the assets) inside the plugin folder for numerous reasons.  Therefore, I'd like to avoid the alternative solution that would require files to be placed in the main application (not inside the plugin folder) if at all possible.

Thanks in advance for your responses!

--
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP
 
---
You received this message because you are subscribed to the Google Groups "CakePHP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cake-php+unsubscribe@googlegroups.com.
To post to this group, send email to cake-php@googlegroups.com.
Visit this group at http://groups.google.com/group/cake-php.
For more options, visit https://groups.google.com/groups/opt_out.

Upgrade problem (1.3 to 2.4) - missing Controller.php

Hi all,

I have a problem after upgrading CakePHP from 1.3 to 2.4 (the actual upgrade was done by the Upgrade shell). 
The error I'm getting is:

Notice: Undefined index: Error in /volume1/web/jeeves3/lib/Cake/Core/Configure.php on line 102 Notice: Undefined index: Exception in /volume1/web/jeeves3/lib/Cake/Core/Configure.php on line 103
Missing Controller

Error: Controller could not be found.
Error: Create the class Controller below in file: app/Controller/Controller.php

Stack Trace
APP/webroot/index.php line 110 ? Dispatcher->dispatch(CakeRequest, CakeResponse)


I've done some tinkering and searching for this problem, but basically I'm out of ideas on how to solve this issue. Has anyone any pointers or helpful advice?

--
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP
 
---
You received this message because you are subscribed to the Google Groups "CakePHP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cake-php+unsubscribe@googlegroups.com.
To post to this group, send email to cake-php@googlegroups.com.
Visit this group at http://groups.google.com/group/cake-php.
For more options, visit https://groups.google.com/groups/opt_out.

Monday, October 28, 2013

Re: Defining Plugin

I used basic URL parameters just as you would any other URL options array. 

$this->Paginator->options(array('url'=> array('controller' => 'users', 'action' => 'index', 'plugin' => 'user_manager')));

It gets set in the view, I just added it in with the rest of the paging options (numbers, next, prev, etc). It worked for 4/5 pages and the one it didn't work on was simply because that view is shared between two functions. I'd rather not have two views so I'll just tweak the code a bit and it should be fine. 

What I'm still a little unsure of is there are instances where you don't designate a URL at all such as working with scaffolding. If the conventions are to have the plugin underscored within a URL, in instances such as the scaffolding the plugin shows up in the URL camel-cased. My guess is that i'm still overlooking something because it's been my experience that constructing your link with something as simple as 'action' => 'index' would direct me back the index view of the current controller and if I was in  admin, it would have the same behavior resulting in something such as /admin/controller/index. I would expect Cake to display the same behavior when within a plugin for example /some_plugin/admin/controller/index when coding your link as 'action' => 'index' from the admin section of somePlugin. The times I needed to specify 'plugin' => 'some_plugin' was when linking to the plugin from a page outside of it, or 'plugin' => null or false when linking from within the plugin to a page outside of it. I'm finding that I have to define my links down the last detail from within the plugin itself and sometimes creating custom routes just to make life easier. I have little to no experience creating my own plugins so I have nothing to compare to, but the fact that this doesn't seem like normal 
cake behavior at all leads me to believe that I still have something out of wack, I just don't know what or where but I haven't stopped looking. Also, 99% of the time Cake screws up it was completely my fault, the other 1% of the time it's not my fault at all but I naturally assume that it was :) So yes, I still think I have something boogered within my app. 


On Mon, Oct 28, 2013 at 5:39 PM, Reuben Helms <reuben.helms@gmail.com> wrote:
What options did you end up using?


On Tuesday, October 29, 2013, Ed Propsner wrote:
I was able to work everything out using $this->paginator options(). I appreciate the help :)


On Mon, Oct 28, 2013 at 2:17 AM, Ed Propsner <crotchfrog@gmail.com> wrote:
You're absolutely right, I was definitely confusing the two. I suppose that I'm so used to referencing the plugin as camel-case everywhere else within the app and since functions are camel-case and they are referenced as such in the URL, it wasn't a far stretch to make the mistake of constructing my links with 'plugin' => 'SomePlugin'. I definitely learned my lesson on that one. I have everything fixed in the app except for pagination. It loads the first :page fine but still assumes on the following :pages the plugin should be loaded as camel-case instead of underscore. Is there something I missed when changing everything over, or is there some place I should let Cake know that those pages belong in some_plugin? I noticed that when the error is thrown the error log shows the plugin as null.  



On Sun, Oct 27, 2013 at 6:56 PM, euromark <dereuromark@gmail.com> wrote:
Yes, I guess you have been creating non-conventional links so far. Mainly because you are confusing framework internal naming schemes with URL naming scheme
The latter defines everything underscore_lowercased, even the plugin.
The first refers mainly to classes, which will always be named CamelCased.

You need to understand the difference in order to not write faulty code - which at some point can blow up (as it then did).


Am Samstag, 26. Oktober 2013 04:43:11 UTC+2 schrieb CrotchFrog:
I've noticed recently some strange behavior when it comes to naming conventions and Plugins.  

For example if I create a link somewhere within a plugin ie. $this->Html->link('Some Link', array('controller' => 'controller', 'action' => 'action')); 
Following the link would land you on the page app/plugin/controller/action unless a location is specified outside of the current plugin and controller. 

Links created this way and that have been working since they were created sometimes out of the blue throw an error along the lines of SomePluginController cannot be found. 
This is strange because the link has always worked in the past. When these links create an error I have to re-create the link and specify the plugin $this->Html->link('controller' => 'controller', 'action' => 'action', 'plugin' => 'some_plugin')
I have to use an underscore in the plugin name, using camel case results in the same error. 

It's possible that some, but not all, of the links were created only specifying the action and not the controller. With this being the case I could sort of understand the resulting error but not when I have specified both the controller and the action.

I created all of my custom routes with the plugin as camel case, it just seems to be links and redirects that display this behavior.  

I assumed that with sticking to naming conventions I could write it as SomePlugin or some_plugin and either one would be fine. 

Have I been creating my links incorrectly this entire time? 

--
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP
 
---
You received this message because you are subscribed to a topic in the Google Groups "CakePHP" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/cake-php/zDwuUhlVGzE/unsubscribe.
To unsubscribe from this group and all its topics, send an email to cake-php+unsubscribe@googlegroups.com.
To post to this group, send em

--
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP
 
---
You received this message because you are subscribed to a topic in the Google Groups "CakePHP" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/cake-php/zDwuUhlVGzE/unsubscribe.
To unsubscribe from this group and all its topics, send an email to cake-php+unsubscribe@googlegroups.com.
To post to this group, send email to cake-php@googlegroups.com.
Visit this group at http://groups.google.com/group/cake-php.
For more options, visit https://groups.google.com/groups/opt_out.

--
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP
 
---
You received this message because you are subscribed to the Google Groups "CakePHP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cake-php+unsubscribe@googlegroups.com.
To post to this group, send email to cake-php@googlegroups.com.
Visit this group at http://groups.google.com/group/cake-php.
For more options, visit https://groups.google.com/groups/opt_out.

Re: Defining Plugin

What options did you end up using?

On Tuesday, October 29, 2013, Ed Propsner wrote:
I was able to work everything out using $this->paginator options(). I appreciate the help :)


On Mon, Oct 28, 2013 at 2:17 AM, Ed Propsner <crotchfrog@gmail.com> wrote:
You're absolutely right, I was definitely confusing the two. I suppose that I'm so used to referencing the plugin as camel-case everywhere else within the app and since functions are camel-case and they are referenced as such in the URL, it wasn't a far stretch to make the mistake of constructing my links with 'plugin' => 'SomePlugin'. I definitely learned my lesson on that one. I have everything fixed in the app except for pagination. It loads the first :page fine but still assumes on the following :pages the plugin should be loaded as camel-case instead of underscore. Is there something I missed when changing everything over, or is there some place I should let Cake know that those pages belong in some_plugin? I noticed that when the error is thrown the error log shows the plugin as null.  



On Sun, Oct 27, 2013 at 6:56 PM, euromark <dereuromark@gmail.com> wrote:
Yes, I guess you have been creating non-conventional links so far. Mainly because you are confusing framework internal naming schemes with URL naming scheme
The latter defines everything underscore_lowercased, even the plugin.
The first refers mainly to classes, which will always be named CamelCased.

You need to understand the difference in order to not write faulty code - which at some point can blow up (as it then did).


Am Samstag, 26. Oktober 2013 04:43:11 UTC+2 schrieb CrotchFrog:
I've noticed recently some strange behavior when it comes to naming conventions and Plugins.  

For example if I create a link somewhere within a plugin ie. $this->Html->link('Some Link', array('controller' => 'controller', 'action' => 'action')); 
Following the link would land you on the page app/plugin/controller/action unless a location is specified outside of the current plugin and controller. 

Links created this way and that have been working since they were created sometimes out of the blue throw an error along the lines of SomePluginController cannot be found. 
This is strange because the link has always worked in the past. When these links create an error I have to re-create the link and specify the plugin $this->Html->link('controller' => 'controller', 'action' => 'action', 'plugin' => 'some_plugin')
I have to use an underscore in the plugin name, using camel case results in the same error. 

It's possible that some, but not all, of the links were created only specifying the action and not the controller. With this being the case I could sort of understand the resulting error but not when I have specified both the controller and the action.

I created all of my custom routes with the plugin as camel case, it just seems to be links and redirects that display this behavior.  

I assumed that with sticking to naming conventions I could write it as SomePlugin or some_plugin and either one would be fine. 

Have I been creating my links incorrectly this entire time? 

--
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP
 
---
You received this message because you are subscribed to a topic in the Google Groups "CakePHP" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/cake-php/zDwuUhlVGzE/unsubscribe.
To unsubscribe from this group and all its topics, send an email to cake-php+unsubscribe@googlegroups.com.
To post to this group, send em

--
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP
 
---
You received this message because you are subscribed to the Google Groups "CakePHP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cake-php+unsubscribe@googlegroups.com.
To post to this group, send email to cake-php@googlegroups.com.
Visit this group at http://groups.google.com/group/cake-php.
For more options, visit https://groups.google.com/groups/opt_out.

Re: Defining Plugin

I was able to work everything out using $this->paginator options(). I appreciate the help :)


On Mon, Oct 28, 2013 at 2:17 AM, Ed Propsner <crotchfrog@gmail.com> wrote:
You're absolutely right, I was definitely confusing the two. I suppose that I'm so used to referencing the plugin as camel-case everywhere else within the app and since functions are camel-case and they are referenced as such in the URL, it wasn't a far stretch to make the mistake of constructing my links with 'plugin' => 'SomePlugin'. I definitely learned my lesson on that one. I have everything fixed in the app except for pagination. It loads the first :page fine but still assumes on the following :pages the plugin should be loaded as camel-case instead of underscore. Is there something I missed when changing everything over, or is there some place I should let Cake know that those pages belong in some_plugin? I noticed that when the error is thrown the error log shows the plugin as null.  



On Sun, Oct 27, 2013 at 6:56 PM, euromark <dereuromark@gmail.com> wrote:
Yes, I guess you have been creating non-conventional links so far. Mainly because you are confusing framework internal naming schemes with URL naming scheme
The latter defines everything underscore_lowercased, even the plugin.
The first refers mainly to classes, which will always be named CamelCased.

You need to understand the difference in order to not write faulty code - which at some point can blow up (as it then did).


Am Samstag, 26. Oktober 2013 04:43:11 UTC+2 schrieb CrotchFrog:
I've noticed recently some strange behavior when it comes to naming conventions and Plugins.  

For example if I create a link somewhere within a plugin ie. $this->Html->link('Some Link', array('controller' => 'controller', 'action' => 'action')); 
Following the link would land you on the page app/plugin/controller/action unless a location is specified outside of the current plugin and controller. 

Links created this way and that have been working since they were created sometimes out of the blue throw an error along the lines of SomePluginController cannot be found. 
This is strange because the link has always worked in the past. When these links create an error I have to re-create the link and specify the plugin $this->Html->link('controller' => 'controller', 'action' => 'action', 'plugin' => 'some_plugin')
I have to use an underscore in the plugin name, using camel case results in the same error. 

It's possible that some, but not all, of the links were created only specifying the action and not the controller. With this being the case I could sort of understand the resulting error but not when I have specified both the controller and the action.

I created all of my custom routes with the plugin as camel case, it just seems to be links and redirects that display this behavior.  

I assumed that with sticking to naming conventions I could write it as SomePlugin or some_plugin and either one would be fine. 

Have I been creating my links incorrectly this entire time? 

--
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP
 
---
You received this message because you are subscribed to a topic in the Google Groups "CakePHP" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/cake-php/zDwuUhlVGzE/unsubscribe.
To unsubscribe from this group and all its topics, send an email to cake-php+unsubscribe@googlegroups.com.
To post to this group, send email to cake-php@googlegroups.com.
Visit this group at http://groups.google.com/group/cake-php.
For more options, visit https://groups.google.com/groups/opt_out.


--
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP
 
---
You received this message because you are subscribed to the Google Groups "CakePHP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cake-php+unsubscribe@googlegroups.com.
To post to this group, send email to cake-php@googlegroups.com.
Visit this group at http://groups.google.com/group/cake-php.
For more options, visit https://groups.google.com/groups/opt_out.