programming

Vim - Autoindent/format code

I had a php file where the indentation had been completely messed up. A quick google came up with this tip for vim:

Press: gg=G
to select the all lines and autoformat.

ExtJs Direct - Not enough required params or this.form is undefined

{"type":"exception","tid":4,"message":"Not enough required params specified for method: loadForm  on class ClassNameHere"
}

If you are getting errors like this check firebug to make sure you are sending the data. I was not sending the data because I keep forgetting to set 'paramorder' or 'paramsasHash' on the form config.

CakePHP - The requested address ... was not found on the server

I just installed the new Ubuntu 10.10 on my workstation. I am in the progress to upgrading to CakePHP 1.3 but more on that later. The first problem I had (that I always have because I always forget this):
The requested address .. was not found on the server

Solution? Enable mod_rewrite. On Ubuntu I did
sudo a2enmod rewrite

Vim Replace All Reminder

I keep forgetting this so here it is for me to remember

Replace all occurences of foo with bar in the file:

%s/foo/bar/g

Svn error: .. has unexpectedly changed special status

To solve this delete the svn:special property by doing this:

svn propdel svn:special FILETOCHANGE

You can also use svn proplist FILETOLOOKAT to see the svn properties on that file.

I had just used this script: http://arctic.org/~dean/scripts/unln to unlink but keep a copy of the symlinked file.
Seems to work quite well.

Cakephp 404 not found (The requested URL .... .xsd was not found on this server)

This happened when i had a controller called Types and a file in my webroot called types.xsd. When i turned off Multiview in my site configuration file it started working.
<Directory ....>
 
Options Indexes FollowSymLinks MultiView
 
</Directory>
I just removed the MultView option for now.

ExtJS ext.data.jsonwriter and cakephp

Just spent quite abit of time getting an EditorGrid properly creating and updating rows automagically using Ext Writer. Except it wasn't so magical.
Notes:
- Create requires success: true and then the created record (including the id).
Use this snippet:
echo '{"success":'.$success.', results:'.$javascript->Object($record).'}';
in the above results should be whatever your roots property is in your store reader config. For example:
                reader: new Ext.data.JsonReader({
                        totalProperty: 'total',
                        successProperty: 'success',
                        root: 'results',
                        idProperty: 'id', etc
Example of working create json string:
{"success":true, results:{"id":"47","jobId":"47","jobType":"7",
"partName":"0101012","partDescription":"3.0 Metre Crossover Network Cable",
"quantity":"1","price":"3.5"}}
Example of working update json string:
{success:true, id:11}
After an update you can use $this->MODELNAME->id to get the id for the json.
Destroy just needs
{success:true}
Read example (all records for grid):
{"total":2, "results":[{"id":"46","jobId":"47","jobType":"7",
"partName":"0101104","partDescription":"Dual Back Box","quantity":"1","price":"4.26"},{"id":"47","jobId":"47","jobType":"7",
"partName":"0101012","partDescription":"3.0 Metre Crossover Network Cable","quantity":"1","price":"3.5"}]}

SVN Ignore Folder

svn propset svn:ignore FOLDERNAME .

^^ Note the dot!

More info here

http://sdesmedt.wordpress.com/2006/12/10/how-to-make-subversion-ignore-files-and-folders/

Mysql - dump and load

You can dump the database into a file using: 
 
  mysqldump -h hostname -u user --password=password databasename > filename 
 
you can restore the info to the database again using: 
 
  mysql -h hostname -u user --password=password databasename < filename

from: http://forums.mysql.com/read.php?10,195091,195097

Cakephp Object not found!

 If you are getting an Object not found! cakephp error check out your httpd.conf

<Directory />

Options FollowSymLinks

AllowOverride All

# Order deny,allow

# Deny from all

Syndicate content