<?xml version="1.0" encoding="UTF-8"?> <rss
version="2.0"
xmlns:content="http://purl.org/rss/1.0/modules/content/"
xmlns:wfw="http://wellformedweb.org/CommentAPI/"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:atom="http://www.w3.org/2005/Atom"
xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
><channel><title>PRONIQUE Software</title> <atom:link href="http://www.pronique.com/feed" rel="self" type="application/rss+xml" /><link>http://www.pronique.com</link> <description>Web Design Services, Custom PHP Development, Open Source Software</description> <lastBuildDate>Thu, 15 Dec 2011 04:44:59 +0000</lastBuildDate> <language>en</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <generator>http://wordpress.org/?v=3.3</generator> <xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" /> <item><title>Mediawiki CSV Import ver 2.2.1 Released (Coupon Codes!)</title><link>http://www.pronique.com/blog/mediawiki-csv-import-ver-2-2-1-released?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=mediawiki-csv-import-ver-2-2-1-released</link> <comments>http://www.pronique.com/blog/mediawiki-csv-import-ver-2-2-1-released#comments</comments> <pubDate>Fri, 04 Nov 2011 19:39:34 +0000</pubDate> <dc:creator>webmaster</dc:creator> <category><![CDATA[Blog]]></category><guid
isPermaLink="false">http://www.pronique.com/?p=1569</guid> <description><![CDATA[PRONIQUE Software is proud to announce a new version Mediawiki CSV Import. Version 2.2.1 introduces the Dataset Library, a collection<a
href="http://www.pronique.com/blog/mediawiki-csv-import-ver-2-2-1-released" class="searchmore">Read the Rest...</a><div
class="clr"></div> Related posts:<ol><li><a
href='http://www.pronique.com/blog/mediawiki-csv-import-2-1-0-release' rel='bookmark' title='Mediawiki CSV Import 2.1.0 Release'>Mediawiki CSV Import 2.1.0 Release</a></li><li><a
href='http://www.pronique.com/blog/how-to-import-csv-data-into-mediawiki-as-pages' rel='bookmark' title='How to Import CSV Data into MediaWiki as pages'>How to Import CSV Data into MediaWiki as pages</a></li></ol>]]></description> <content:encoded><![CDATA[<p>PRONIQUE Software is proud to announce a new version Mediawiki CSV Import. Version 2.2.1 introduces the Dataset Library, a collection of contributed datasets that you can import and use to build your own Mediawiki Import files.</p><p>You must be a registered user to import or download the datasets.  Membership is only $7.99 (one time) and helps support the development of the tool.  It&#8217;s still FREE to register and use the tool however exports are limited to 15 pages until you upgrade.</p><p>To mark the new release and spark interest we are giving away 25 free accounts!  Use one of the coupon codes below to upgrade to a Paid account.  Once you create  an account, login and enter the coupon code on the Upgrade page.</p><p>SD3YD7<br
/> FD3GD3<br
/> MA1JT9<br
/> TA9DT5<br
/> TE4W2D<br
/> SF7XK4<br
/> SD8GW6<br
/> BN2DF4<br
/> OK5RT3<br
/> EP8GF4<br
/> ED9GR3<br
/> SW2FR3<br
/> FRIDAY9</p><p>Learn more and signup for a FREE account at <a
href="http://mwcsvimport.pronique.com/">http://mwcsvimport.pronique.com/</a></p><p></p><p>Related posts:<ol><li><a
href='http://www.pronique.com/blog/mediawiki-csv-import-2-1-0-release' rel='bookmark' title='Mediawiki CSV Import 2.1.0 Release'>Mediawiki CSV Import 2.1.0 Release</a></li><li><a
href='http://www.pronique.com/blog/how-to-import-csv-data-into-mediawiki-as-pages' rel='bookmark' title='How to Import CSV Data into MediaWiki as pages'>How to Import CSV Data into MediaWiki as pages</a></li></ol></p>]]></content:encoded> <wfw:commentRss>http://www.pronique.com/blog/mediawiki-csv-import-ver-2-2-1-released/feed</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>CakePHP: Reorder lft rght columns in Tree models</title><link>http://www.pronique.com/blog/cakephp-reorder-lft-rght-columns-in-tree-models?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=cakephp-reorder-lft-rght-columns-in-tree-models</link> <comments>http://www.pronique.com/blog/cakephp-reorder-lft-rght-columns-in-tree-models#comments</comments> <pubDate>Sat, 10 Sep 2011 17:57:02 +0000</pubDate> <dc:creator>webmaster</dc:creator> <category><![CDATA[Blog]]></category> <category><![CDATA[Acls]]></category> <category><![CDATA[CakePHP]]></category> <category><![CDATA[TreeBehavior]]></category><guid
isPermaLink="false">http://www.pronique.com/?p=1534</guid> <description><![CDATA[If you are using the Tree Behavior sometimes the lft and rght columns get out of sync, especially if you<a
href="http://www.pronique.com/blog/cakephp-reorder-lft-rght-columns-in-tree-models" class="searchmore">Read the Rest...</a><div
class="clr"></div> Related posts:<ol><li><a
href='http://www.pronique.com/blog/cakephp-developer-links' rel='bookmark' title='CakePHP Developer Links'>CakePHP Developer Links</a></li><li><a
href='http://www.pronique.com/blog/guide-to-cakephp-2-0-conventions' rel='bookmark' title='Guide to CakePHP 2.0 Conventions'>Guide to CakePHP 2.0 Conventions</a></li></ol>]]></description> <content:encoded><![CDATA[<p>If you are using the Tree Behavior sometimes the lft and rght columns get out of sync, especially if you are adding and deleting records during development.  Add the following action function to your app/app_controller.php or controller of your choice.</p><pre class="brush: php">
    /**
    * This is a maint function to recover/reorder the
    * lft/rght columns of a tree model.
    *
    */
    public function recover_tree( ) {
        $modelClass = $this->modelClass;
        if ( property_exists( $this->$modelClass->Behaviors, 'Tree' ) ) {
            if ( !$this->$modelClass->recover() ) {
                echo 'Error recovering acl tree';
            } else {
                echo $modelClass . ' reordered.';
            }
        } else {
            echo $modelClass . ' is not a tree model';
        }
        exit;
    }
</pre><p>CakePHP&#8217;s Acls implementation also uses this same Tree table structure.  Since Acos and Aros often don&#8217;t have their own controllers the following function will allow you to reorder the lft rght columns in one shot.  Again, add this to your AppController or controller of choice.</p><pre class="brush: php">
    /**
    * This is a maint function to recover/reorder the
    *  lft/rght columns of the aco and aro models.
    *
    */
    public function recover_acl_tree( ) {
        App::Import('Model', 'Aco' );
        App::Import('Model', 'Aro' );
        $Aco = new Aco;
        $Aro = new Aro;
        if ( !$Aco->recover() || !$Aro->recover() ) {
            echo 'Error recovering acl tree';
        } else {
            echo 'Aros and Acos reordered.';
        }
        exit;
    }
</pre><p>These methods/actions are meant to be called manually as you feel needed.  If you would rather call them from other controller actions I would suggest prepending &#8216;_&#8217; to the method names making them methods rather than url accessible actions.</p><p>Related posts:<ol><li><a
href='http://www.pronique.com/blog/cakephp-developer-links' rel='bookmark' title='CakePHP Developer Links'>CakePHP Developer Links</a></li><li><a
href='http://www.pronique.com/blog/guide-to-cakephp-2-0-conventions' rel='bookmark' title='Guide to CakePHP 2.0 Conventions'>Guide to CakePHP 2.0 Conventions</a></li></ol></p>]]></content:encoded> <wfw:commentRss>http://www.pronique.com/blog/cakephp-reorder-lft-rght-columns-in-tree-models/feed</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Starting a CakePHP 2.0 Project with cakeinit</title><link>http://www.pronique.com/blog/starting-a-cakephp-2-0-project-with-cakeinit?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=starting-a-cakephp-2-0-project-with-cakeinit</link> <comments>http://www.pronique.com/blog/starting-a-cakephp-2-0-project-with-cakeinit#comments</comments> <pubDate>Wed, 27 Jul 2011 01:11:46 +0000</pubDate> <dc:creator>webmaster</dc:creator> <category><![CDATA[Blog]]></category> <category><![CDATA[cakeinit]]></category> <category><![CDATA[CakePHP]]></category> <category><![CDATA[CakePHP 2.0]]></category><guid
isPermaLink="false">http://www.pronique.com/?p=1519</guid> <description><![CDATA[The latest version of cakeinit (0.8.5) now includes support to create CakePHP 2.0 projects. To create a new project you<a
href="http://www.pronique.com/blog/starting-a-cakephp-2-0-project-with-cakeinit" class="searchmore">Read the Rest...</a><div
class="clr"></div> Related posts:<ol><li><a
href='http://www.pronique.com/blog/guide-to-cakephp-2-0-conventions' rel='bookmark' title='Guide to CakePHP 2.0 Conventions'>Guide to CakePHP 2.0 Conventions</a></li><li><a
href='http://www.pronique.com/blog/cakephp-developer-links' rel='bookmark' title='CakePHP Developer Links'>CakePHP Developer Links</a></li></ol>]]></description> <content:encoded><![CDATA[<p>The latest version of cakeinit (0.8.5) now includes support to create CakePHP 2.0 projects.  To create a new project you only need two commands.  This is an alternative to downloading the zip or tar.gz file and extracting.</p><pre style="margin-bottom:25px;line-height:22px;padding:8px; background:black;color:lime"># download cakeinit
curl http://cakeinit.pronique.com/cakeinit.php -o cakeinit.php
# Create an app called mycakeapp based on the cakephp-2.0 bundle
php ./cakeinit.php cakephp-2.0 mycakeapp
</pre><p>The <a
href="http://cakeinit.pronique.com/bundles/view/cakephp-1.3">cakephp-1.3 bundle</a> has also been updated to pull the recently released CakePHP 1.3.11 version of the framework.  If you get some ugly permission errors don&#8217;t forget to prepend sudo to the above commands.</p><h3><a
href="http://cakeinit.pronique.com">Read more about cakeinit at http://cakeinit.pronique.com</a>.</h3><p></p><p>Related posts:<ol><li><a
href='http://www.pronique.com/blog/guide-to-cakephp-2-0-conventions' rel='bookmark' title='Guide to CakePHP 2.0 Conventions'>Guide to CakePHP 2.0 Conventions</a></li><li><a
href='http://www.pronique.com/blog/cakephp-developer-links' rel='bookmark' title='CakePHP Developer Links'>CakePHP Developer Links</a></li></ol></p>]]></content:encoded> <wfw:commentRss>http://www.pronique.com/blog/starting-a-cakephp-2-0-project-with-cakeinit/feed</wfw:commentRss> <slash:comments>1</slash:comments> </item> <item><title>How to Import CSV Data into MediaWiki as pages</title><link>http://www.pronique.com/blog/how-to-import-csv-data-into-mediawiki-as-pages?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=how-to-import-csv-data-into-mediawiki-as-pages</link> <comments>http://www.pronique.com/blog/how-to-import-csv-data-into-mediawiki-as-pages#comments</comments> <pubDate>Wed, 20 Jul 2011 17:11:10 +0000</pubDate> <dc:creator>webmaster</dc:creator> <category><![CDATA[Blog]]></category> <category><![CDATA[csv import]]></category> <category><![CDATA[Mediawiki CSV Import]]></category> <category><![CDATA[mediawiki import]]></category> <category><![CDATA[mwcsvimport]]></category><guid
isPermaLink="false">http://www.pronique.com/?p=1508</guid> <description><![CDATA[1.) Create a FREE account for the Mediawiki CSV Import tool. 2.) Upload your CSV file, making sure you have<a
href="http://www.pronique.com/blog/how-to-import-csv-data-into-mediawiki-as-pages" class="searchmore">Read the Rest...</a><div
class="clr"></div> Related posts:<ol><li><a
href='http://www.pronique.com/blog/mediawiki-csv-import-2-1-0-release' rel='bookmark' title='Mediawiki CSV Import 2.1.0 Release'>Mediawiki CSV Import 2.1.0 Release</a></li><li><a
href='http://www.pronique.com/blog/mediawiki-csv-import-ver-2-2-1-released' rel='bookmark' title='Mediawiki CSV Import ver 2.2.1 Released (Coupon Codes!)'>Mediawiki CSV Import ver 2.2.1 Released (Coupon Codes!)</a></li></ol>]]></description> <content:encoded><![CDATA[<p>1.) Create a FREE account for the <a
href="http://mwcsvimport.pronique.com/">Mediawiki CSV Import</a> tool.</p><p>2.) Upload your CSV file, making sure you have column names in the first row, ie.</p><pre>State, Abbreviation, Population
Texas, TX, 24782302
California, CA, 36961664
Florida, FL, 18801310</pre><p></p><p>3.) Define a Page Template by clicking on <strong>Add Template</strong>.  The template can contain mediawiki mark and variable from your csv data file.  The template you are defining represents one row of data per page.</p><p>Variables for the CSV example above would be {$State}, {$Abbreviation}, and {$Population}.</p><p>4.) Click <strong>Generate Merge File</strong> to build a Mediawiki XML Import file</p><p>5.) Download this xml file to your computer.</p><p>6.) Login to your Mediawiki site and goto <strong>Special Pages</strong>.</p><p>7.) Click on the <strong>Import Pages</strong> link and upload the XML file.</p><p>8.) That&#8217;s it, Mediawiki will show you a summary of imported pages that you can click and view.</p><h3><a
href="http://mwcsvimport.pronique.com/">Check out the Mediawiki CSV Import tool</a> from PRONIQUE Software</h3><p>Related posts:<ol><li><a
href='http://www.pronique.com/blog/mediawiki-csv-import-2-1-0-release' rel='bookmark' title='Mediawiki CSV Import 2.1.0 Release'>Mediawiki CSV Import 2.1.0 Release</a></li><li><a
href='http://www.pronique.com/blog/mediawiki-csv-import-ver-2-2-1-released' rel='bookmark' title='Mediawiki CSV Import ver 2.2.1 Released (Coupon Codes!)'>Mediawiki CSV Import ver 2.2.1 Released (Coupon Codes!)</a></li></ol></p>]]></content:encoded> <wfw:commentRss>http://www.pronique.com/blog/how-to-import-csv-data-into-mediawiki-as-pages/feed</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Guide to CakePHP 2.0 Conventions</title><link>http://www.pronique.com/blog/guide-to-cakephp-2-0-conventions?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=guide-to-cakephp-2-0-conventions</link> <comments>http://www.pronique.com/blog/guide-to-cakephp-2-0-conventions#comments</comments> <pubDate>Sat, 09 Jul 2011 06:34:29 +0000</pubDate> <dc:creator>webmaster</dc:creator> <category><![CDATA[Blog]]></category> <category><![CDATA[CakePHP]]></category> <category><![CDATA[CakePHP 2.0]]></category><guid
isPermaLink="false">http://www.pronique.com/?p=1435</guid> <description><![CDATA[With the release of CakePHP 2.0 you will see some big changes. With the release of 2.0 alpha I decided<a
href="http://www.pronique.com/blog/guide-to-cakephp-2-0-conventions" class="searchmore">Read the Rest...</a><div
class="clr"></div> Related posts:<ol><li><a
href='http://www.pronique.com/blog/cakephp-reorder-lft-rght-columns-in-tree-models' rel='bookmark' title='CakePHP: Reorder lft rght columns in Tree models'>CakePHP: Reorder lft rght columns in Tree models</a></li><li><a
href='http://www.pronique.com/blog/starting-a-cakephp-2-0-project-with-cakeinit' rel='bookmark' title='Starting a CakePHP 2.0 Project with cakeinit'>Starting a CakePHP 2.0 Project with cakeinit</a></li><li><a
href='http://www.pronique.com/blog/cakephp-developer-links' rel='bookmark' title='CakePHP Developer Links'>CakePHP Developer Links</a></li></ol>]]></description> <content:encoded><![CDATA[<style>
span.path {
padding:0 5px;
font-family: Courier New;
background:#e8e8e8;
}
</style><p>With the release of CakePHP 2.0 you will see some big changes.  With the release of 2.0 alpha I decided it was time to start tinkering and getting ready for 1.x migrations and will start new development with 2.x.  This page serves as a quick intro and reference to these changes.  If you are familiar with 1.x I&#8217;ve provided some side-by-side comparison of code.<span
id="more-1435"></span></p><h2>Using git to clone CakePHP 2.0 alpha</h2><pre>
prompt&gt; git clone https://github.com/cakephp/cakephp.git myapp
prompt&gt; cd myapp
prompt&gt; git checkout 2.0.0-alpha
</pre><h2>CamelCase directories and filenames</h2><p>A late decision to 2.x is to use CamelCase class names and filenames.  This is a welcome change as the CakePHP 1.x convention did not feel very natural.  Also notice directories are not plural any more, ie <span
class="path">controllers</span> is now <span
class="path">Controller</span>, <span
class="path">views</span> is now <span
class="path">View</span>.</p><h4>CakePHP 1.x</h4><p>File: app/controllers/users_controller.php</p><pre class="brush: php">
class UsersController {
    var $name = 'Users';

}
</pre><h4>CakePHP 2.x</h4><p>File: app/Controller/UsersController.php</p><pre class="brush: php">
class UsersController {
    var $name = 'Users';

}
</pre><p>Views will follow the same convention for directories but not the actual .ctp view files.</p><h2>Location of AppController.php (app_controller.php)</h2><p>AppController now lives in <span
class="path">app/Controller</span> with all of your other controllers.</p><h4>CakePHP 1.x</h4><pre style="overflow-y:auto;padding:10px;width:94%;margin-bottom:20px;background:#eee">
app/app_controller.php
</pre><h4>CakePHP 2.x</h4><pre style="overflow-y:auto;padding:10px;width:94%;margin-bottom:20px;background:#eee">
app/Controller/AppController.php
</pre><p>Note:  AppModel and AppController files do not exist in a new installation but it&#8217;s best practice to create and use these files.</p><h2>Location of AppModel.php (app_model.php)</h2><p>Like AppController,  AppModel now lives in <span
class="path">app/Model</span> with all of your other models.</p><h4>CakePHP 1.x</h4><pre style="overflow-y:auto;padding:10px;width:94%;margin-bottom:20px;background:#eee">
app/app_model.php
</pre><h4>CakePHP 2.x</h4><pre style="overflow-y:auto;padding:10px;width:94%;margin-bottom:20px;background:#eee">
app/Model/AppModel.php
</pre><p>Note:  AppModel and AppController files do not exist in a new installation but it&#8217;s best practice to create and use these files.</p><h2>CakePHP 2.x Themes</h2><p>Themes are enabled by setting two attributes on controllers.  If you want to enable an application wide theme then you will apply this code to your AppController.</p><h4>CakePHP 2.x</h4><p>File: app/Controller/AppController.php</p><pre class="brush: php">
class AppController extends Controller {
    public function beforeRender() {
        $this->viewClass = 'Theme';
        $this->theme = 'MyTheme';
    }
}
</pre><p>The theme files as specified will need to be located in <span
class="path">app/View/Themed/MyTheme/</span> and this directory will mirror the structure of View directory.  Example, the default layout will be <span
class="path">app/View/Themed/MyTheme/Layouts/default.ctp</span></p><h2>app/Config/email.php</h2><p>CakePHP 2.x introduces a new email.php configuration file.  The syntax of this file will feel like database.php but deals with email specific configurations.  You can specifiy multiple configurations for production, development, and testing.</p><p>File: app/Config/email.php.default</p><pre class="brush: php">
&lt;?php
/**
 * This is email configuration file.
 *
 * Use it to configure email transports of Cake.
 *
 * PHP 5
 *
 * CakePHP(tm) : Rapid Development Framework (http://cakephp.org)
 * Copyright 2005-2011, Cake Software Foundation, Inc. (http://cakefoundation.org)
 *
 * Licensed under The MIT License
 * Redistributions of files must retain the above copyright notice.
 *
 * @copyright     Copyright 2005-2011, Cake Software Foundation, Inc. (http://cakefoundation.org)
 * @link          http://cakephp.org CakePHP(tm) Project
 * @package       app.config
 * @since         CakePHP(tm) v 2.0.0
 * @license       MIT License (http://www.opensource.org/licenses/mit-license.php)
 */
/**
 * In this file you set up your send email details.
 *
 * @package       cake.config
 */
/**
 * Email configuration class.
 * You can specify multiple configurations for production, development and testing.
 *
 * transport => The name of a supported transport; valid options are as follows:
 *		mail 		- Send using PHP mail function
 *		smtp		- Send using SMTP
 *
 * You can add custom transports (or override existing transports) by adding the
 * appropriate file to app/Network/Email.  Transports should be named 'YourTransport.php',
 * where 'Your' is the name of the transport.
 *
 * from =>
 * The origin email. See CakeEmail::from() about the valid values
 *
 */
class EmailConfig {

	public $default = array(
		'transport' => 'mail',
		'from' => 'you@localhost'
	);

	public $smtp = array(
		'transport' => 'smtp',
		'from' => array('My Site', 'site@localhost'),
		'host' => 'localhost',
		'port' => 25,
		'timeout' => 30,
		'username' => 'user',
		'password' => 'secret',
		'client' => null
	);

	public $fast = array(
		'from' => 'you@localhost',
		'sender' => null,
		'to' => null,
		'cc' => null,
		'bcc' => null,
		'replyTo' => null,
		'readReceipt' => null,
		'returnPath' => null,
		'messageId' => true,
		'subject' => null,
		'message' => null,
		'headers' => null,
		'viewRender' => null,
		'template' => false,
		'layout' => false,
		'viewVars' => null,
		'attachments' => null,
		'emailFormat' => null,
		'transport' => 'smtp',
		'host' => 'localhost',
		'port' => 25,
		'timeout' => 30,
		'username' => 'user',
		'password' => 'secret',
		'client' => null
	);

}
</pre><p>I will add more as I explore and begin developing apps with CakePHP 2.0.  As always, your comments are welcome below.</p><p>Related posts:<ol><li><a
href='http://www.pronique.com/blog/cakephp-reorder-lft-rght-columns-in-tree-models' rel='bookmark' title='CakePHP: Reorder lft rght columns in Tree models'>CakePHP: Reorder lft rght columns in Tree models</a></li><li><a
href='http://www.pronique.com/blog/starting-a-cakephp-2-0-project-with-cakeinit' rel='bookmark' title='Starting a CakePHP 2.0 Project with cakeinit'>Starting a CakePHP 2.0 Project with cakeinit</a></li><li><a
href='http://www.pronique.com/blog/cakephp-developer-links' rel='bookmark' title='CakePHP Developer Links'>CakePHP Developer Links</a></li></ol></p>]]></content:encoded> <wfw:commentRss>http://www.pronique.com/blog/guide-to-cakephp-2-0-conventions/feed</wfw:commentRss> <slash:comments>3</slash:comments> </item> <item><title>Mediawiki CSV Import 2.1.0 Release</title><link>http://www.pronique.com/blog/mediawiki-csv-import-2-1-0-release?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=mediawiki-csv-import-2-1-0-release</link> <comments>http://www.pronique.com/blog/mediawiki-csv-import-2-1-0-release#comments</comments> <pubDate>Wed, 06 Jul 2011 08:42:22 +0000</pubDate> <dc:creator>webmaster</dc:creator> <category><![CDATA[Blog]]></category> <category><![CDATA[csv import]]></category> <category><![CDATA[mediawiki]]></category> <category><![CDATA[mwcsvimport]]></category><guid
isPermaLink="false">http://www.pronique.com/?p=1399</guid> <description><![CDATA[We have released a new version of Mediawiki CSV Import (mwcsvimport). The latest version is now a web app rather<a
href="http://www.pronique.com/blog/mediawiki-csv-import-2-1-0-release" class="searchmore">Read the Rest...</a><div
class="clr"></div> Related posts:<ol><li><a
href='http://www.pronique.com/blog/mediawiki-csv-import-ver-2-2-1-released' rel='bookmark' title='Mediawiki CSV Import ver 2.2.1 Released (Coupon Codes!)'>Mediawiki CSV Import ver 2.2.1 Released (Coupon Codes!)</a></li><li><a
href='http://www.pronique.com/blog/how-to-import-csv-data-into-mediawiki-as-pages' rel='bookmark' title='How to Import CSV Data into MediaWiki as pages'>How to Import CSV Data into MediaWiki as pages</a></li><li><a
href='http://www.pronique.com/blog/starting-a-cakephp-2-0-project-with-cakeinit' rel='bookmark' title='Starting a CakePHP 2.0 Project with cakeinit'>Starting a CakePHP 2.0 Project with cakeinit</a></li></ol>]]></description> <content:encoded><![CDATA[<p>We have released a new version of Mediawiki CSV Import (mwcsvimport).  The latest version is now a web app rather than a download/install.  You must register and login to use the latest version of the tool.</p><p>You can upgrade to a paid account with a one-time payment of $7.99.  This will remove a 15 page export limit of free accounts.  The latest version is available at <a
href="http://mwcsvimport.pronique.com/">http://mwcsvimport.pronique.com/</a>.  Give it a go and don&#8217;t forget to send us your feedback and comments.</p><p><img
style="width:400px" src="http://mwcsvimport.pronique.com/img/my-datasets-screenshot.jpg" alt="Mediawiki CSV Import" /></p><p>The latest version is available in multiple languages but we need your help translating.  Read more: <a
href="http://mwcsvimport.pronique.com/pages/translations">Translators Needed</a></p><p>Read the release notes for more info about the <a
href="http://mwcsvimport.pronique.com/pages/release_notes">2.1.0 release</a>.</p><p>Related posts:<ol><li><a
href='http://www.pronique.com/blog/mediawiki-csv-import-ver-2-2-1-released' rel='bookmark' title='Mediawiki CSV Import ver 2.2.1 Released (Coupon Codes!)'>Mediawiki CSV Import ver 2.2.1 Released (Coupon Codes!)</a></li><li><a
href='http://www.pronique.com/blog/how-to-import-csv-data-into-mediawiki-as-pages' rel='bookmark' title='How to Import CSV Data into MediaWiki as pages'>How to Import CSV Data into MediaWiki as pages</a></li><li><a
href='http://www.pronique.com/blog/starting-a-cakephp-2-0-project-with-cakeinit' rel='bookmark' title='Starting a CakePHP 2.0 Project with cakeinit'>Starting a CakePHP 2.0 Project with cakeinit</a></li></ol></p>]]></content:encoded> <wfw:commentRss>http://www.pronique.com/blog/mediawiki-csv-import-2-1-0-release/feed</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>netotools.com launched</title><link>http://www.pronique.com/blog/netotools-com-launched?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=netotools-com-launched</link> <comments>http://www.pronique.com/blog/netotools-com-launched#comments</comments> <pubDate>Wed, 13 Apr 2011 21:40:17 +0000</pubDate> <dc:creator>webmaster</dc:creator> <category><![CDATA[Blog]]></category> <category><![CDATA[netotools.com]]></category><guid
isPermaLink="false">http://www.pronique.com/?p=1393</guid> <description><![CDATA[I have launched a new collection of web-based networking, the site and tools based are powered by CakePHP. Check it<a
href="http://www.pronique.com/blog/netotools-com-launched" class="searchmore">Read the Rest...</a><div
class="clr"></div> No related posts.]]></description> <content:encoded><![CDATA[<p>I have launched a new collection of web-based networking, the site and tools based are powered by CakePHP.  Check it out at <a
href="http://www.netotools.com">http://www.netotools.com</a></p><p>No related posts.</p>]]></content:encoded> <wfw:commentRss>http://www.pronique.com/blog/netotools-com-launched/feed</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>gearmandAdmin &#8211; A PHP class to query gearmand</title><link>http://www.pronique.com/blog/gearmandadmin-php-class?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=gearmandadmin-php-class</link> <comments>http://www.pronique.com/blog/gearmandadmin-php-class#comments</comments> <pubDate>Sat, 27 Nov 2010 21:49:26 +0000</pubDate> <dc:creator>webmaster</dc:creator> <category><![CDATA[Blog]]></category> <category><![CDATA[gearman]]></category> <category><![CDATA[gearmand]]></category> <category><![CDATA[map-reduce]]></category> <category><![CDATA[php]]></category><guid
isPermaLink="false">http://www.pronique.com/?p=1312</guid> <description><![CDATA[This is a php class that connects to a running gearmand process and gets the &#8216;status&#8217; and and list of<a
href="http://www.pronique.com/blog/gearmandadmin-php-class" class="searchmore">Read the Rest...</a><div
class="clr"></div> No related posts.]]></description> <content:encoded><![CDATA[<p>This is a php class that connects to a running gearmand process and gets the &#8216;status&#8217; and and list of &#8216;workers&#8217;.  The response can be had as the raw response $gmAdmin->getStatusRaw() or as a structured array $gmAdmin->getStatus().</p><h2>Usage and Examples</h2><pre class="code" style="border:2px solid #AAA; padding:12px;background-color:#EEEEEE;color:#359239;font-family:monospace;">
require('gearmandAdmin.php');

//Create object from class sending host and port to connect on.
$gmAdmin = new gearmandAdmin( '127.0.0.1', 4730 );

// Outputs raw response from 'status' command
echo $gmAdmin->getStatusRaw();

//Example output from $gmAdmin->getStatusRaw();
ping       0       0       4
traceroute      0       0       4
whois   0       0       4
dig     0       0       4

// Outputs raw response from 'workers' command
echo $gmAdmin->getWorkersRaw();

//Example output from $gmAdmin->getWorkersRaw();
15 ::3875:6100:0:0%6386984 - :
14 ::3875:6100:0:0%6386984 - : ping traceroute whois dig
13 ::3875:6100:0:0%6386984 - : ping traceroute whois dig
12 ::3875:6100:0:0%6386984 - : ping traceroute whois dig
11 ::3875:6100:0:0%6386984 - : ping traceroute whois dig

// Returns array of status
print_r( $gmAdmin->getStatus() );

//Example output from $gmAdmin->getStatus();
Array
(
    [0] => Array
        (
            [function] => ping
            [total] => 0
            [running] => 0
            [workers] => 4
        )
    [1] => Array
        (
            [function] => traceroute
            [total] => 0
            [running] => 0
            [workers] => 4
        )
    [2] => Array
        (
            [function] => whois
            [total] => 0
            [running] => 0
            [workers] => 4
        )
    [3] => Array
        (
            [function] => dig
            [total] => 0
            [running] => 0
            [workers] => 4
        )
)

// Returns array of workers
print_r( $gmAdmin->getWorkers() );

// Example out from $gmAdmin->getWorkers()
Array
(
    [0] => Array
        (
            [descriptor] => 15
            [ip] => ::3875:6100:0:0%6386984
            [clientid] => -
        )
    [1] => Array
        (
            [descriptor] => 14
            [ip] => ::3875:6100:0:0%6386984
            [clientid] => -
            [functions] => Array
                (
                    [0] => ping
                    [1] => traceroute
                    [2] => whois
                    [3] => dig
                )
        )
    [2] => Array
        (
            [descriptor] => 13
            [ip] => ::3875:6100:0:0%6386984
            [clientid] => -
            [functions] => Array
                (
                    [0] => ping
                    [1] => traceroute
                    [2] => whois
                    [3] => dig
                )
        )
    [3] => Array
        (
            [descriptor] => 12
            [ip] => ::3875:6100:0:0%6386984
            [clientid] => -
            [functions] => Array
                (
                    [0] => ping
                    [1] => traceroute
                    [2] => whois
                    [3] => dig
                )
        )
    [4] => Array
        (
            [descriptor] => 11
            [ip] => ::3875:6100:0:0%6386984
            [clientid] => -
            [functions] => Array
                (
                    [0] => ping
                    [1] => traceroute
                    [2] => whois
                    [3] => dig
                )
        )
)

//Disconnect the TCP socket connection
$gmAdmin->disconnect();
</pre><h2>The gearmandAdmin.php class</h2><pre class="code" style="border:2px solid #AAA; padding:12px;background-color:#EEEEEE;color:#359239;font-family:monospace;">
&lt;?php
/**
 *
 * A PHP class to interface with gearmand's admin interface
 * This is a programable alternative to telneting to the
 * gearmand process (default port TCP 4730) and issuing the
 * commands 'status' and 'workers'
 * It is assumed that you have gearmand installed and running
 * as well, that you have the gearman pecl module install and enabled in
 * php.ini
 *
 * @license: GPLv3
 * @author: Jonathan Cutrer
 * @website: http://www.pronique.com
 *
 * If you find this tool useful consider linking to http:/www.pronique.com/
 * Or donate $5 via paypal, http://www.pronique.com/donate
 *
 *
 * Reference: http://gearman.org/index.php?id=protocol
 *
 */

class gearmandAdmin {

  private $socketHandle;
  private $host = '127.0.0.1';
  private $port = '4730';
  private $timeout = '5';

  function __construct( $host=null, $port=null, $timeout=null ) {
        if ( $host ) { $this->host = $host;}
        if ( $port ) { $this->port = $port;}
        if ( $timeout ) { $this->timeout = $timeout;}
        $this->connect();
  }

  /**
   * returns array of status
   *
   */
  function getStatus() {

    $response = $this->getStatusRaw();
    //TODO build $response in a structured array
    $count = 0;
    $lines = explode("\n", $response );
    foreach( $lines as $line ) {
        if ( $line =='.' ) { break; }
        $parts = explode("\t", $line);
        $status[$count]['function'] = $parts[0];
        $status[$count]['total'] = $parts[1];
        $status[$count]['running'] = $parts[2];
        $status[$count]['workers'] = $parts[3];
        $count++;
    }
    return $status;

  }

  /**
   * send the 'status' command to the server and return the raw response
   *
   */
  function getStatusRaw() {

    return $this->send('status');

  }

  /**
   * return array of workers
   *
   */
  function getWorkers() {

    $response = $this->getWorkersRaw();
    $lines = explode("\n", $response );
    //TODO build $response in a structured array
    $count = 0;
    foreach( $lines as $line ) {
        if ( $line =='.' ) { break; }
        $parts = explode(" ", $line);
        $workers[$count]['descriptor'] = $parts[0];
        $workers[$count]['ip'] = $parts[1];
        $workers[$count]['clientid'] = $parts[2];
        $func_marker = false;
        foreach( $parts as $part) {
            if ( $func_marker == true ) {
              $workers[$count]['functions'][] = $part;
            }
          if ($part == ':') { $func_marker = 1; }
        }
        $count++;
    }
    return $workers;

  }

  /**
   * send the 'workers' command to the server and return the raw response
   *
   */
  function getWorkersRaw() {

    return $this->send('workers');

  }

  /**
   * connect to gearmand using tcp
   *
   */
  function connect() {
    try {
      $this->socketHandle = fsockopen( $this->host, $this->port, $errno, $errstr, $this->timeout);
    } catch (Exception $e) {
      echo "Could not connect to gearmand server\n";
      echo "$errstr ($errno)\n";
    }
  }

  /**
   * disconnect from gearmand
   *
   */
  function disconnect() {
    fclose( $this->socketHandle );
  }

  /**
   * send a command to the socket
   *
   */
  function send( $cmd ) {
    $data = '';
    fwrite($this->socketHandle, $cmd . "\r\n");
    while (!feof($this->socketHandle)) {
         $data .= fgets($this->socketHandle, 1024);
         if ( preg_match("/\n\.$/i", $data ) ) { break; }
    }
    return $data;
  }
}
?>
</pre></p><p><br/></p><p>gearman is a distributed job server consisting of a manager, workers, and clients.  Learn more about it at <a
href="http://gearman.org/">http://gearman.org/</a>.  This code is released under the GPLv3 license, feel free to use it in your application.  Drop me a line and tell me how and where you are using it.</p><p>No related posts.</p>]]></content:encoded> <wfw:commentRss>http://www.pronique.com/blog/gearmandadmin-php-class/feed</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>CakePHP Developer Links</title><link>http://www.pronique.com/blog/cakephp-developer-links?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=cakephp-developer-links</link> <comments>http://www.pronique.com/blog/cakephp-developer-links#comments</comments> <pubDate>Thu, 23 Jul 2009 14:57:18 +0000</pubDate> <dc:creator>webmaster</dc:creator> <category><![CDATA[Blog]]></category> <category><![CDATA[CakePHP]]></category><guid
isPermaLink="false">http://www.pronique.com/blog/cakephp-developer-links</guid> <description><![CDATA[This page was started to store and organize a collective of CakePHP tutorials and useful links for PHP developers. Currently<a
href="http://www.pronique.com/blog/cakephp-developer-links" class="searchmore">Read the Rest...</a><div
class="clr"></div> Related posts:<ol><li><a
href='http://www.pronique.com/blog/starting-a-cakephp-2-0-project-with-cakeinit' rel='bookmark' title='Starting a CakePHP 2.0 Project with cakeinit'>Starting a CakePHP 2.0 Project with cakeinit</a></li><li><a
href='http://www.pronique.com/blog/cakephp-reorder-lft-rght-columns-in-tree-models' rel='bookmark' title='CakePHP: Reorder lft rght columns in Tree models'>CakePHP: Reorder lft rght columns in Tree models</a></li></ol>]]></description> <content:encoded><![CDATA[<p>This page was started to store and organize a collective of CakePHP tutorials and useful links for PHP developers.  Currently there are 122 articles and counting</p><p><span
id="more-1055"></span></p><div
class="inline-form"><div
class="message">Have you written or discovered a useful CakePHP Article, Tutorial or Blog Post?  Add a CakePHP link using this form.</div><p></div><h3>CakePHP 2.0 Manual</h3><p><a
href="http://www.cakedocs.com">http://www.cakedocs.com/</a></p><h3>jQuery autocomplete Helper by Gianluca Gentile (Gemini)</h3><p><a
href="http://bakery.cakephp.org/articles/view/jquery-autocomplete-helper">http://bakery.cakephp.org/&#8230;/jquery-autocomplete-helper</a></p><h3>Wizard Component 1.2 by jaredhoyt</h3><p><a
href="http://bakery.cakephp.org/articles/view/wizard-component-1-2-1">http://bakery.cakephp.org/&#8230;/wizard-component-1-2-1</a><br
/> <a
href="http://bakery.cakephp.org/articles/view/wizard-component-1-2-tutorial">http://bakery.cakephp.org/&#8230;/wizard-component-1-2-tutorial</a></p><h3>CSS files and $scripts_for_layout, an article by teknoid</h3><p><a
href="http://teknoid.wordpress.com/2008/05/05/css-files-and-scripts_for_layout/">http://teknoid.wordpress.com/&#8230;/css-files-and-scripts_for_layout/</a></p><h3>Using Themes with CakePHP, an article by Matt Curry (pseudocoder)</h3><p><a
href="http://www.pseudocoder.com/archives/2008/01/07/theming-with-cakephp/">http://www.pseudocoder.com/&#8230;/theming-with-cakephp/</a></p><h3>Cryptable Behavior by Matthew Walker (utoxin)</h3><p><a
href="http://bakery.cakephp.org/articles/view/cryptable-behavior">http://bakery.cakephp.org/&#8230;/cryptable-behavior</a></p><h3>markItUp! jQuery universal markup editor Helper by Jay Salvat</h3><p><a
href="http://bakery.cakephp.org/articles/view/markitup-jquery-universal-markup-editor-helper">http://bakery.cakephp.org/&#8230;jquery-universal-markup-editor-helper</a></p><h3>Automatic Javascript Includer Helper by Graham Weldon (predominant)</h3><p><a
href="http://bakery.cakephp.org/articles/view/automatic-javascript-includer-helper">http://bakery.cakephp.org/&#8230;javascript-includer-helper</a></p><h3>Gravatar Helper by Graham Weldon (predominant)</h3><p><a
href="http://bakery.cakephp.org/articles/view/gravatar-helper">http://bakery.cakephp.org/&#8230;/gravatar-helper</a></p><h3>Tree Helper by Andy Dawson (AD7six)</h3><p><a
href="http://bakery.cakephp.org/articles/view/tree-helper-1">http://bakery.cakephp.org/articles/view/tree-helper-1</a></p><h3>Configure Plugin provides a simple web interface to add new Configure values and override existing values.</h3><p><a
href="http://bakery.cakephp.org/articles/view/configure-plugin">http://bakery.cakephp.org/articles/view/configure-plugin</a></p><h3>CakePHP : Change view file from controller</h3><p><a
href="http://www.lost-in-code.com/programming/php-code/cakephp-change-view-file-from-controller/">http://www.lost-in-code.com/&#8230;/cakephp-change-view-file-from-controller/</a></p><h3>Using Configure in CakePHP applications</h3><p><a
href="http://cricava.com/blogs/index.php?blog=6&#038;title=using_configure_on_your_cakephp_applicat&#038;more=1&#038;c=1&#038;tb=1&#038;pb=1">http://cricava.com/&#8230;configure_on_your_cakephp_applicat&#8230;</a></p><h3>Page Breadcrumb Links in CakePHP</h3><p><a
href="http://mrphp.com.au/code/code-category/cakephp/cakephp-1-2/page-breadcrumb-links-cakephp">http://mrphp.com.au/&#8230;/page-breadcrumb-links-cakephp</a></p><h3>Paypal IPN plugin and PaypalHelper</h3><p><a
href="http://bakery.cakephp.org/articles/view/paypal-ipn-instant-payment-notification-plugin-complete-with-paypalhelper">http://bakery.cakephp.org/&#8230;plugin-complete-with-paypalhelper</a></p><h3>CakePHP Pagination With A HABTM Relationship</h3><p><a
href="http://www.littlehart.net/atthekeyboard/2007/12/11/cakephp-pagination-with-a-habtm-relationship/">http://www.littlehart.net/&#8230;pagination-with-a-habtm-relationship/</a></p><h3>Automagically setting user ID of record creator and modifier in CakePHP 1.2</h3><p><a
href="http://blog.loadsys.com/2008/05/02/automagically-setting-user-id-of-record-creator-and-modifier-in-cakephp-12/">http://blog.loadsys.com/&#8230;creator-and-modifier-in-cakephp-12/</a></p><h3>CakePHP RSS Feed Datasource</h3><p><a
href="http://blog.loadsys.com/2009/06/19/cakephp-rss-feed-datasource/">http://blog.loadsys.com/&#8230;19/cakephp-rss-feed-datasource/</a></p><h3>CakePHP jQuery Ajax Helper (Easy Scriptaculous Replacement)</h3><p><a
href="http://blog.loadsys.com/2009/05/01/cakephp-jquery-ajax-helper-easy-scriptaculous-replacement/">http://blog.loadsys.com/&#8230;easy-scriptaculous-replacement</a></p><h3>CakePHP Sequence Behavior</h3><p><a
href="http://www.neilcrookes.com/2009/02/09/cakephp-sequence-behavior/">http://www.neilcrookes.com/2009/02/09/cakephp-sequence-behavior/</a></p><h3>Multiple Admin Levels in CakePHP</h3><p><a
href="http://www.jamesfairhurst.co.uk/posts/view/multiple_admin_levels_in_cakephp/">http://www.jamesfairhurst.co.uk/&#8230;in_levels_in_cakephp/</a></p><h3>navigationhelper</h3><p><a
href="http://github.com/Pagebakers/navigationhelper/blob/master/navigation.php">http://github.com/&#8230;r/blob/master/navigation.php</a></p><h3>SoapSource, a SOAP Client Datasource for CakePHP</h3><p><a
href="http://www.pagebakers.nl/2008/12/18/soapsource-a-soap-client-datasource-for-cakephp/">http://www.pagebakers.nl/&#8230;t-datasource-for-cakephp/</a></p><h3>cakephp-eav</h3><p><a
href="http://github.com/...eav/tree/master">http://github.com/morrislaptop/cakephp-eav/tree/master</a></p><h3>CakePHP EAV Model using Expandable Behavior</h3><p><a
href="http://debuggable.com/posts/unlimited-model-fields-expandable-behavior:48428c2e-9a88-47ec-ae8e-77a64834cda3">http://debuggable.com/&#8230;expandable-behavior:48428c2e-9a88-47ec-ae8e-77a64834cda3</a></p><h3>Debugging with FirePHP</h3><p><a
href="http://bakery.cakephp.org/articles/view/debugging-with-firephp">http://bakery.cakephp.org/articles/view/debugging-with-firephp</a></p><h3>How do I inplement Sub-Domains and DNS CNAMES in CakePHP?</h3><p><a
href="http://stackoverflow.com/questions/560241/how-do-i-inplement-sub-domains-and-dns-cnames-in-cakephp">http://stackoverflow.com/&#8230;sub-domains-and-dns-cnames-in-cakephp</a></p><h3>Sphinx Behavior</h3><p><a
href="http://bakery.cakephp.org/articles/view/sphinx-behavior">http://bakery.cakephp.org/articles/view/sphinx-behavior</a></p><h3>Secrets of Admin Routing by Nate (nate)</h3><p><a
href="http://bakery.cakephp.org/articles/view/secrets-of-admin-routing">http://bakery.cakephp.org/&#8230;-of-admin-routing</a></p><h3>AJAX star rating plugin by Michael Schneidt (schneimi)</h3><p><a
href="http://bakery.cakephp.org/articles/view/ajax-star-rating-plugin-1">http://bakery.cakephp.org/&#8230;star-rating-plugin-1</a></p><h3>Paypal Payments Component Using cURL by Parris Khachi (parris)</h3><p><a
href="http://bakery.cakephp.org/articles/view/paypal-payments-component-using-curl">http://bakery.cakephp.org/&#8230;paypal-payments-component-using-curl</a></p><h3>Get Twitter RSS Feeds with CakePHP by Darren Moore (zeen)</h3><p><a
href="http://bakery.cakephp.org/articles/view/get-twitter-rss-feeds-with-cakephp">http://bakery.cakephp.org/&#8230;/get-twitter-rss-feeds-with-cakephp</a></p><h3>Serving up actions as AJAX with jQuery in a few simple steps by Dean Sofer (Proloser)</h3><p><a
href="http://bakery.cakephp.org/articles/view/serving-up-actions-as-ajax-with-jquery-in-a-few-simple-steps">http://bakery.cakephp.org/&#8230;ajax-with-jquery-in-a-few-simple-steps</a></p><h3>AutoLogin Component &#8211; An Auth remember me feature by Miles Johnson (milesj)</h3><p><a
href="http://bakery.cakephp.org/articles/view/autologin-component-an-auth-remember-me-feature">http://bakery.cakephp.org/&#8230;auth-remember-me-feature</a></p><h3>Flex remoting with cakePHP &#8211; CpAmf plugin by Daniel Verner (vernerd)</h3><p><a
href="http://bakery.cakephp.org/articles/view/flex-remoting-with-cakephp-cpamf-plugin-1">http://bakery.cakephp.org/&#8230;cakephp-cpamf-plugin-1</a></p><h3>PluginHandler to load configuration and callbacks for plugins by Gediminas (sky_l3ppard)</h3><p><a
href="http://bakery.cakephp.org/articles/view/pluginhandler-to-load-configuration-and-callbacks-for-plugins">http://bakery.cakephp.org/&#8230;configuration-and-callbacks-for-plugins</a></p><p>Older Links</p><h3>CakePHP</h3><dl><dt></dt><h3>1.2</h3><dd>CakePHP 1.2<dl><dt><a
href="http://bakery.cakephp.org/articles/view/how-to-use-acl-in-1-2-x">How to use ACL with Cake PHP 1.2.x? | The Bakery, Everything CakePHP : Articles</a></dt><dt><a
href="http://bakery.cakephp.org/articles/view/basic-pagination-overview-3">Basic Pagination Overview (1.2) | The Bakery, Everything CakePHP : Articles</a></dt><dt><a
href="http://bakery.cakephp.org/articles/view/advanced-pagination-1-2">Advanced Pagination (1.2) | The Bakery, Everything CakePHP : Articles</a></dt><dt><a
href="http://bakery.cakephp.org/articles/view/multiple-files-upload-in-v1-2-1">Multiple files upload in v1.2 | The Bakery, Everything CakePHP : Articles</a></dt><dt><a
href="http://realm3.com/articles/setting_up_users_groups_withacl_and_auth_in_cake_1.2.php">realm3: Setting Up User Groups With ACL and Auth in CakePHP 1.2</a></dt><dd>realm3: web application and software development, graphic design, freelance security consultation: business processes made easy.</dd><dt><a
href="http://lemoncake.wordpress.com/2007/07/03/all-about-validation-in-cakephp-12/">All About Validation in CakePHP 1.2 « Another Cake Baker</a></dt><dt><a
href="http://bakery.cakephp.org/articles/view/testing-models-with-cakephp-1-2-test-suite">Testing Models with CakePHP 1.2 test suite | The Bakery, Everything CakePHP : Articles</a></dt><dt><a
href="http://www.thinkingphp.org/2007/05/13/bringing-the-cold-war-to-cakephp-12-the-containable-behavior/">ThinkingPHP and beyond » Bringing the cold war to CakePHP 1.2 &#8211; The Containable Behavior</a></dt><dt><a
href="http://bakery.cakephp.org/articles/view/soft-delete-behavior">Soft Delete Behavior | The Bakery, Everything CakePHP : Articles</a></dt><dt><a
href="http://bakery.cakephp.org/articles/view/brief-overview-of-the-new-emailcomponent">Brief Overview of the new EmailComponent | The Bakery, Everything CakePHP : Articles</a></dt><dt><a
href="http://cakebaker.42dh.com/2007/11/22/organizing-your-code-with-folders/">cakebaker » Organizing your code with folders</a></dt><dt><a
href="http://www.littlehart.net/atthekeyboard/2007/03/13/how-easy-are-web-services-in-cakephp-12-really-easy/">How Easy Are Web Services in CakePHP 1.2? Really Easy! — @TheKeyboard</a></dt><dt><a
href="http://cakebaker.42dh.com/2008/01/10/deprecated-stuff-in-cakephp-12/#comment-60313">Deprecated stuff in CakePHP 1.2 &#8211; cakebaker</a></dt><dt><a
href="http://cakebaker.42dh.com/2008/01/19/fat-models-and-how-they-change-how-you-use-the-model-class/">Fat models and how they change how you use the Model class &#8211; cakebaker</a></dt><dt><a
href="http://cake-php.blogspot.com/2006/09/21-things-you-must-know-about-cakephp.html">Cake PHP useful tips: 21 Things You Must Know About CakePHP</a></dt><dd></dd><dt><a
href="http://cutfromthenorth.com/integrating-facebook-connect-with-cakephps-auth-component/">Integrating Facebook Connect with CakePHP’s Auth component | Cut from the North</a></dt><dd>I wanted to be able to leverage all of the advantages of using Cake&#8217;s built in Auth component in my latest application; problem was that the application needed</dd><dt><a
href="http://www.phpfreaks.com/forums/index.php?topic=242004.0">AuthComponent/Sessions and Changing Layouts</a></dt><dd>AuthComponent/Sessions and Changing Layouts</dd><dt><a
href="http://www.studiocanaria.com/articles/cakephp_auth_component_users_groups_permissions_part_ii">CakePHP Auth Component &#8211; Users, Groups &amp; Permissions &#8211; Part II</a></dt><dd></dd><dt><a
href="http://www.pseudocoder.com/">What Happends If It Actually Works?</a></dt><dd></dd></dl></dd><dt></dt><dl><dt><a
href="http://bakery.cakephp.org/articles/view/firecake-helper">Firecake Helper | The Bakery, Everything CakePHP : Articles</a></dt><dt><a
href="http://bakery.cakephp.org/articles/view/confcomponent-db-based-configuration-tutorial">ConfComponent DB based configuration Tutorial | The Bakery, Everything CakePHP : Articles</a></dt><dt><a
href="http://bakery.cakephp.org/articles/view/testing-models-with-cakephp-1-2-test-suite">Testing Models with CakePHP 1.2 test suite | The Bakery, Everything CakePHP : Articles</a></dt><dt><a
href="http://groups.google.com/group/cake-php/">Cake PHP | Google Groups</a></dt></dl><dt><a
href="http://bakery.cakephp.org/articles/view/a-component-to-help-creating-soap-services">A Component to help creating SOAP services | The Bakery, Everything CakePHP : Articles</a></dt><dt><a
href="http://www.littlehart.net/atthekeyboard/2007/09/11/a-hopefully-useful-tutorial-for-using-cakephps-auth-component/">A Hopefully Useful Tutorial For Using CakePHP’s Auth Component — @TheKeyboard</a></dt><dt><a
href="http://bakery.cakephp.org/articles/view/actas-image-column-behavior">ActAs Image column behavior | The Bakery, Everything CakePHP : Articles</a></dt><dt><a
href="http://bakery.cakephp.org/articles/view/adding-a-google-map-to-your-app">Adding a Google Map to your App | The Bakery, Everything CakePHP : Articles</a></dt><dt><a
href="http://rossoft.wordpress.com/2006/09/07/ajax-star-rating-helper/">AJAX Star Rating helper « RosSoft</a></dt><dt><a
href="http://api.cakephp.org/class_model.html">API for CakePHP : The PHP Rapid Development Framework :: version 1.1.x.x</a></dt><dt><a
href="http://bakery.cakephp.org/articles/view/autohotkey-guide-for-cakephp">AutoHotkey Guide for CakePHP | The Bakery, Everything CakePHP : Articles</a></dt><dt><a
href="http://bakery.cakephp.org/articles/view/brief-overview-of-the-new-emailcomponent">Brief Overview of the new EmailComponent | The Bakery, Everything CakePHP : Articles</a></dt><dt><a
href="http://bakery.cakephp.org/articles/view/cache-elements-individually-for-each-user">Cache Elements Individually For Each User. | The Bakery, Everything CakePHP : Articles</a></dt><dt><a
href="http://groups.google.com/group/cake-php">Cake PHP | Google Groups</a></dt><dt><a
href="http://manual.cakephp.org/pages/apas10">CakePHP : A Rapid Development Framework :: Apas10</a></dt><dd>Your description goes here.</dd><dt><a
href="http://www.scribd.com/doc/5503/CakePHP-tutorial-no-1-from-IBM">CakePHP tutorial no. 1 from IBM</a></dt><dd>The first tutorial about CakePHP from IBM  PHP cakephp</dd><dt><a
href="http://www.scribd.com/doc/5546/CakePHP-tutorial-no-3-from-IBM">CakePHP tutorial no. 3 from IBM</a></dt><dd>The 3. tutorial about CakePHP from IBM  PHP cakephp</dd><dt><a
href="http://nik.chankov.net/2007/10/19/storing-the-settings-into-database/">CakePHP: Storing settings into database | Dev weblog</a></dt><dd>Today I would like to show you how I am storing and fetching the settings for my applications in CakePHP.</dd><dt><a
href="http://bakery.cakephp.org/articles/view/calling-controller-actions-from-cron-and-the-command-line">Calling controller actions from cron and the command line | The Bakery, Everything CakePHP : Articles</a></dt><dt><a
href="http://bakery.cakephp.org/articles/view/checking-for-duplicate-records-unique-record">Checking for duplicate records (unique record) | The Bakery, Everything CakePHP : Articles</a></dt><dt><a
href="http://bakery.cakephp.org/articles/view/confcomponent-db-based-configuration">ConfComponent DB based configuration | The Bakery, Everything CakePHP : Articles</a></dt><dt><a
href="http://bakery.cakephp.org/articles/view/easy-syntax-highlighting-in-ultraedit">Easy Syntax Highlighting in UltraEdit | The Bakery, Everything CakePHP : Articles</a></dt><dt><a
href="http://bakery.cakephp.org/articles/view/flashing-with-cakephp">Flashing with CakePHP | The Bakery, Everything CakePHP : Articles</a></dt><dt><a
href="http://www.concepthue.com/how-to/cake_flex/">Getting CakePHP to work with Flex through AMFPHP</a></dt><dt><a
href="http://bakery.cakephp.org/articles/view/hosting-admin-urls-on-a-subdomain">Hosting Admin URLs on a Subdomain | The Bakery, Everything CakePHP : Articles</a></dt><dt><a
href="http://bakery.cakephp.org/articles/view/implementing-a-comma-separated-values-csv-webservice">Implementing a Comma Separated Values (CSV) &#8220;webservice&#8221; | The Bakery, Everything CakePHP : Articles</a></dt><dt><a
href="http://bakery.cakephp.org/articles/view/implementing-soap-on-cakephp">Implementing SOAP on cakePHP | The Bakery, Everything CakePHP : Articles</a></dt><dt><a
href="http://bakery.cakephp.org/articles/view/integrating-zend-framework-lucene-with-your-cake-application">Integrating Zend Framework Lucene with your Cake Application | The Bakery, Everything CakePHP : Articles</a></dt><dt><a
href="http://bakery.cakephp.org/articles/view/ldap-models-in-cakephp">LDAP Models in CakePHP | The Bakery, Everything CakePHP : Articles</a></dt><dt><a
href="http://bakery.cakephp.org/articles/view/lighttpd-and-cakephp-setup-in-subdirectories">LightTPD and CakePHP setup in subdirectories | The Bakery, Everything CakePHP : Articles</a></dt><dt><a
href="http://myeasyscripts.com/loudbaking/how-to-use-authcomponent-in-cakephp/">Loud Baking » Blog Archive » How to use AuthComponent in CakePHP</a></dt><dt><a
href="http://support.ongetc.com/index.php?option=com_content&#038;task=view&#038;id=254&#038;Itemid=182">My CakePHP resources list &#8211; Support.OngETC.com</a></dt><dd>Chanh&#8217;s Blog and home of COAddOns that develops Mambo add-ons, Mambo dedicated support and advisory site. Contains CMS related research, developments and appropriate tutorials</dd><dt><a
href="http://www.nabble.com/IBM-Tutorial---Part-3---Cook-up-web-sites-fast---Dealer-ACLs-t4464111.html">Nabble &#8211; CakePHP &#8211; IBM Tutorial &#8211; Part 3 / Cook up web sites fast &#8211; Dealer ACLs</a></dt><dd>IBM Tutorial &#8211; Part 3 / Cook up web sites fast &#8211; Dealer ACLs. Hi everyone Has anyone completed a solution to the Dealert ACLs problem that is set in Part 3&#8230;</dd><dt><a
href="http://bakery.cakephp.org/articles/view/observable-models">Observable Models | The Bakery, Everything CakePHP : Articles</a></dt><dt><a
href="http://bakery.cakephp.org/articles/view/pagination">Pagination | The Bakery, Everything CakePHP : Articles</a></dt><dt><a
href="http://bakery.cakephp.org/articles/view/quickly-translate-ip-to-geo-coordinates">Quickly Translate IP to Geo Coordinates | The Bakery, Everything CakePHP : Articles</a></dt><dt><a
href="http://bakery.cakephp.org/articles/view/real-world-access-control">Real World Access Control | The Bakery, Everything CakePHP : Articles</a></dt><dt><a
href="http://bakery.cakephp.org/articles/view/restful-web-services-with-cakephp">RESTful Web Services With CakePHP | The Bakery, Everything CakePHP : Articles</a></dt><dt><a
href="http://cakeforge.org/snippet/detail.php?type=snippet&#038;id=78">RSSModel</a></dt><dt><a
href="http://www.sanisoft.com/blog/2007/06/15/cakephp-models-created-modified-gotcha/">SANIsoft &#8211; PHP for E Biz» Blog Archive » CakePHP Model’s created / modified gotcha!</a></dt><dt><a
href="http://www.developer.com/lang/php/article.php/3636686">Scaffolding with CakePHP &#8211; Managing Your Fantasy Football Team</a></dt><dd>Just as with buildings CakePHP Scaffolding is a great way of setting up the early parts of developing a web application.</dd><dt><a
href="http://bakery.cakephp.org/articles/view/simple-smtp-mailer">Simple SMTP Mailer | The Bakery, Everything CakePHP : Articles</a></dt><dt><a
href="http://bakery.cakephp.org/articles/view/some-ideas-to-organize-your-css-files-and-autoload-them-in-cakephp">Some ideas to organize your CSS files and autoload them in CakePHP | The Bakery, Everything CakePHP : Articles</a></dt><dt><a
href="http://thefaultandfracture.blogspot.com/2007/10/enabling-cakephp-11-on-lighttpd-15.html">The Fault And Fracture: Enabling CakePHP 1.1 on Lighttpd 1.5</a></dt><dt><a
href="http://bakery.cakephp.org/articles/view/user-permissions-and-cakephp-acl">User Permissions and CakePHP ACL | The Bakery, Everything CakePHP : Articles</a></dt><dt><a
href="http://bakery.cakephp.org/articles/view/using-ldap-as-a-datasource-basic-find-example">Using ldap as a datasource: basic find example | The Bakery, Everything CakePHP : Articles</a></dt><dt><a
href="http://bakery.cakephp.org/articles/view/using-tinymce-with-cakephp-and-ajax">Using TinyMCE with CakePHP and AJAX | The Bakery, Everything CakePHP : Articles</a></dt><dt><a
href="http://bakery.cakephp.org/articles/view/uuid-behavior">Uuid Behavior | The Bakery, Everything CakePHP : Articles</a></dt><dt><a
href="http://cakeforge.org/snippet/detail.php?type=snippet&#038;id=77">Web Model for REST</a></dt><dt><a
href="http://bakery.cakephp.org/articles/view/yacca-yet-another-cake-component-for-auth">YACCA Yet Another Cake Component for Auth | The Bakery, Everything CakePHP : Articles</a></dt><dt><a
href="http://cakebaker.42dh.com/2007/04/16/writing-an-installer-for-your-cakephp-application/">Writing an installer for your CakePHP application &#8211; cakebaker</a></dt></dl><p>Related posts:<ol><li><a
href='http://www.pronique.com/blog/starting-a-cakephp-2-0-project-with-cakeinit' rel='bookmark' title='Starting a CakePHP 2.0 Project with cakeinit'>Starting a CakePHP 2.0 Project with cakeinit</a></li><li><a
href='http://www.pronique.com/blog/cakephp-reorder-lft-rght-columns-in-tree-models' rel='bookmark' title='CakePHP: Reorder lft rght columns in Tree models'>CakePHP: Reorder lft rght columns in Tree models</a></li></ol></p>]]></content:encoded> <wfw:commentRss>http://www.pronique.com/blog/cakephp-developer-links/feed</wfw:commentRss> <slash:comments>1</slash:comments> </item> </channel> </rss>
<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using disk: basic
Page Caching using disk: enhanced
Database Caching using apc
Object Caching 3394/3459 objects using apc

Served from: www.pronique.com @ 2012-02-05 00:41:48 -->
