Great, thanks Joshua.  It's fine if you're asking if something *is* a
bug, but once you find out it is, it's always good to follow it up
with a ticket to make sure it gets fixes.  Thanks again.

On Apr 11, 2:38 pm, "Joshua Benner" <[EMAIL PROTECTED]> wrote:
> I've applied nate's fix with success.
>
> Sorry for the reporting -- I'll report bugs more politely in the
> future. :)
>
> On Apr 11, 2:12 pm, "nate" <[EMAIL PROTECTED]> wrote:
>
> > He firespade,
>
> > I actually came up with another method that is more efficient, as it
> > does not require a loop to check for numeric keys.  You can see the
> > change here, as well as the test case that proves 
> > it:https://trac.cakephp.org/changeset/4838
>
> > Also, in the future, if you'd like to submit patches (or bug reports
> > [Josh ;-)]), please readhttps://trac.cakephp.org/wiki/bugreport
> > and this:https://trac.cakephp.org/wiki/Developement/CodingStandards
>
> > Generally speaking, we don't respond to patches or bug reports on the
> > mailing list, as this isn't the place for it.  Thanks guys.
>
> > On Apr 11, 1:05 pm, "[EMAIL PROTECTED]" <[EMAIL PROTECTED]> wrote:
>
> > > Place this over the original Object method in the javascript.php
> > > located in "\cake\libs\view\helpers\".
> > > Enjoy.
>
> > > function object($data, $block = false, $prefix = '', $postfix = '',
> > > $stringKeys = array(), $quoteKeys = true, $q = "\"")
> > >         {
> > >             $parts = array();
> > >             $is_list = false;
>
> > >             $keys = array_keys($data);
> > >             $max_length = count($data)-1;
>
> > >             if(($keys[0] == 0) and ($keys[$max_length] == $max_length)) {
> > >                 $is_list = true;
>
> > >                 for($i=0; $i<count($keys); $i++) {
> > >                     if($i != $keys[$i]) {
> > >                         $is_list = false;
> > >                         break;
> > >                     }
> > >                 }
>
> > >             }
>
> > >             foreach($data as $key=>$value) {
> > >                 if(is_array($value)) {
> > >                     if($is_list) $parts[] = $this->object($value, false, 
> > > '',
> > > '', $stringKeys, $quoteKeys, $q);
> > >                     else $parts[] = $q . $this->escapeString($key) . $q .
> > > ':' . $this->object($value, false, '', '', $stringKeys, $quoteKeys,
> > > $q);
> > >                 } else {
> > >                     $str = '';
> > >                     if(!$is_list) $str = $q . $this->escapeString($key) .
> > > $q .':';
>
> > >                     if(is_numeric($value)) $str .= $value;
> > >                     elseif($value === false) $str .= 'false';
> > >                     elseif($value === true) $str .= 'true';
> > >                     else $str .= $q . $this->escapeString($value) . $q;
>
> > >                     $parts[] = $str;
> > >                 }
> > >             }
> > >             $json = implode(',',$parts);
>
> > >             if($is_list) return '[' . $json . ']';
> > >             else $rt = '{' . $json . '}';
>
> > >             $rt = $prefix . $rt . $postfix;
>
> > >             if($block)
> > >             {
> > >                 $rt = $this->codeBlock($rt);
> > >             }
>
> > >             return $rt;
> > >         }


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Cake 
PHP" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/cake-php?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to