programming

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

Logitech G15/Z-10 LCD Spotify status/currently playing script

Here is a quick script I put together to be able to see what song is currently playing from Spotify on my Z-10 speakers.

Download here : g15spotify.zip

Released under the GPL 2.0

Please note this is my first 'big' bash script so please let me know about any problems/improvements needed.

Loosely based on G15 Amarok Plugin Plus by Robert Riemann

http://www.kde-apps.org/content/show.php/G15+Amarok+Plugin+Plus?content=76743

 

Cakephp Session object destruction failed / session_regenerate_id() annoyance

While writing a webapp I suddenly started getting this error:

Session object destruction failed

Apparently it is related to session_regenerate_id(). For now I have solved it by setting security.level to medium in core.php.

On my todo list for a proper fix before release.

Print Arrays nicely using pr

I recently had to do some debugging of arrays. Print_r() is very, very ugly:
Array ( [0] => struct SidAndAttributesType { string SecurityIdentifier; unsignedInt Attributes; } [1] => struct NonEmptyArrayOfGroupIdentifiersType { SidAndAttributesType GroupIdentifier; } [2] => struct
I did some research and found a nice solution: use pr() instead of print_r.
Array
(
    [0] => struct SidAndAttributesType {
 string SecurityIdentifier;
 unsignedInt Attributes;
}
    [1] => struct NonEmptyArrayOfGroupIdentifiersType {
 SidAndAttributesType GroupIdentifier;
}
    [2] => struct NonEmptyArrayOfRestrictedGroupIdentifiersType {
 SidAndAttributesType RestrictedGroupIdentifier;
}
Shorter, simpler, sweeter!
Syndicate content