<?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>ItOpen - Open Web Solutions, WebGis Development &#187; Joomla</title>
	<atom:link href="http://www.itopen.it/category/programmazione/joomla/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.itopen.it</link>
	<description>[lang_en]Open Web Solutions: WebGis, Open Source development[/lang_en][lang_it]Soluzioni WebGIS e sviluppo software Open Source[lang_it]</description>
	<lastBuildDate>Tue, 07 Feb 2012 11:18:14 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>HtmlPurifier plugin for Joomla 2.5</title>
		<link>http://www.itopen.it/2012/02/07/htmlpurifier-plugin-for-joomla-2-5/</link>
		<comments>http://www.itopen.it/2012/02/07/htmlpurifier-plugin-for-joomla-2-5/#comments</comments>
		<pubDate>Tue, 07 Feb 2012 09:25:56 +0000</pubDate>
		<dc:creator>Alessandro Pasotti</dc:creator>
				<category><![CDATA[Joomla]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Tech]]></category>
		<category><![CDATA[[lang_it]Accessibilità[/lang_it][lang_en]Accessibility[/lang_en]]]></category>

		<guid isPermaLink="false">http://www.itopen.it/?p=735</guid>
		<description><![CDATA[I&#8217;ve recently discovered that the good old HtmlPurifier content plugin for Joomla wasn&#8217;t working with the latest Joomla 2.5.x due to some subtle changes in the Joomla autoloader stuff. I had to patch the plugin to store spl_autoload_functions before registering its own functions, the library method hit a PHP issue which prevents re-registering of spl [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve recently discovered that the good old HtmlPurifier content plugin for Joomla wasn&#8217;t working with the latest Joomla 2.5.x due to some subtle changes in the Joomla autoloader stuff.</p>
<p>I had to patch the plugin to store <strong>spl_autoload_functions</strong> before registering its own functions, the library method hit a PHP issue which prevents re-registering of spl abstract methods which were registerd by a private constructor of a child class: this definitely makes sense but in this case it&#8217;s just an idle complication.</p>
<p>The patched plugin is available for download from my <a href="https://github.com/elpaso/joomla-fap-25/blob/master/release/plg_htmlpurifier_content_2.5_itopen.zip?raw=true">github project page</a>, please report any issue on <a href="https://github.com/elpaso/joomla-fap-25/issues">the tracker</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.itopen.it/2012/02/07/htmlpurifier-plugin-for-joomla-2-5/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Jupgrade: fixing migration errors</title>
		<link>http://www.itopen.it/2011/12/16/jupgrade-fixing-migration-errors/</link>
		<comments>http://www.itopen.it/2011/12/16/jupgrade-fixing-migration-errors/#comments</comments>
		<pubDate>Fri, 16 Dec 2011 14:29:55 +0000</pubDate>
		<dc:creator>Alessandro Pasotti</dc:creator>
				<category><![CDATA[Joomla]]></category>
		<category><![CDATA[Tech]]></category>

		<guid isPermaLink="false">http://www.itopen.it/?p=663</guid>
		<description><![CDATA[Last week I challenged my first migration from Joomla 1.5 to 1.7. Jupgrade is a wonderful tool, it worked pretty well but leaved the categories tree in an unuseable state and made a big mess in the article&#8217;s ACL. The symptoms of the two problems are: some categories (non only in articles but also in [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.itopen.it/wp-content/uploads/2007/10/joomlacolor.png"><img class="alignright  wp-image-148" title="Joomla logo quadrato" src="http://www.itopen.it/wp-content/uploads/2007/10/joomlacolor.png" alt="" width="192" height="192" /></a></p>
<p>Last week I challenged my first migration from Joomla 1.5 to 1.7. Jupgrade is a wonderful tool, it worked pretty well but leaved the categories tree in an unuseable state and made a big mess in the article&#8217;s ACL.</p>
<p>The symptoms of the two problems are:</p>
<ol>
<li>some categories (non only in articles but also in weblinks and contacts) are not shown in the articles category drop-down list, a category tree rebuild from the control panel doesn&#8217;t solve the problem</li>
<li>users of levels different than superadminstrator cannot edit and save articles created from other users, apparently the ACL should allow this because they are set to &#8220;inherit&#8221; and the action should be allowed by the upstream ACL.</li>
</ol>
<p>At first I managed to solve the tree problem with some SQL but this was not enough to solve the second issue: most articles (hundreds of them) still had wrong ACL set preventing administrator level users to edit or save other&#8217;s articles.</p>
<p>Opening and saving each single article when logged in as superadministrator solved the issue, but doing this boring procedure with hundreds of articles and having many other sites to migrate the most obvious solution was to write a small component to fix those issues.</p>
<p>The component performs two tasks:</p>
<ol>
<li>rebuild the category tree, assigning correct depth and parent</li>
<li>reset all category and article&#8217;s ACLs to default (inherited)</li>
</ol>
<p>No warranty and no assistance are available but if it helped you to solve a problem and to save time and money, a donation of any amount would be appreciated.</p>
<p>Download the component <a href="http://www.itopen.it/wp-content/uploads/2011/12/com_fixperm.zip">com_fixperm</a>.</p>
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="cmd" value="_s-xclick" />
<input type="hidden" name="hosted_button_id" value="8ADZ9H2EKRQBU" />
<input type="image" name="submit" src="https://www.paypalobjects.com/it_IT/IT/i/btn/btn_donateCC_LG.gif" alt="PayPal - Il sistema di pagamento online più facile e sicuro!" /> <img src="https://www.paypalobjects.com/it_IT/i/scr/pixel.gif" alt="" width="1" height="1" border="0" /></form>
]]></content:encoded>
			<wfw:commentRss>http://www.itopen.it/2011/12/16/jupgrade-fixing-migration-errors/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Joomla FAP accessible template ready for 1.7</title>
		<link>http://www.itopen.it/2011/12/06/prima-versione-pubblica-di-joomla-fap-1-7/</link>
		<comments>http://www.itopen.it/2011/12/06/prima-versione-pubblica-di-joomla-fap-1-7/#comments</comments>
		<pubDate>Tue, 06 Dec 2011 18:05:55 +0000</pubDate>
		<dc:creator>Alessandro Pasotti</dc:creator>
				<category><![CDATA[Joomla]]></category>
		<category><![CDATA[[lang_it]Accessibilità[/lang_it][lang_en]Accessibility[/lang_en]]]></category>

		<guid isPermaLink="false">http://www.itopen.it/?p=643</guid>
		<description><![CDATA[Today I released the first public version of Jooma! FAP 1.7, the accessible suite for Joomla! which I&#8217;m developing since 2008. The suite was born to comply with the Italian regulation regarding web sites managed by public administrations, they must be not only accessible but also follow other technical requirements (like doctype XHTML 1.0 strict, [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignright size-full wp-image-127" title="Joomla Logo" src="http://www.itopen.it/wp-content/uploads/2007/08/joomla300px.png" alt="" width="300" height="61" /><br />
Today I released the first public version of Jooma! FAP 1.7, the accessible suite for Joomla! which I&#8217;m developing since 2008.</p>
<p>The suite was born to comply with the Italian regulation regarding web sites managed by public administrations, they must be not only accessible but also follow other technical requirements (like doctype XHTML 1.0 strict, to say one).</p>
<p>The project is maintained on <a title="Github project page" href="https://github.com/elpaso/joomla-fap-17" target="_blank">github </a>, all the code is released under AGPL (Affero GPL) license.</p>
<div id="attachment_654" class="wp-caption alignright" style="width: 310px"><a href="http://www.itopen.it/wp-content/uploads/2011/12/joomla_fap_tpl_positions.png"><img class="size-medium wp-image-654" title="joomla_fap_tpl_positions" src="http://www.itopen.it/wp-content/uploads/2011/12/joomla_fap_tpl_positions-300x225.png" alt="Posizioni del template Joomla! FAP 1.7" width="300" height="225" /></a><p class="wp-caption-text">Posizioni del template Joomla! FAP 1.7</p></div>
]]></content:encoded>
			<wfw:commentRss>http://www.itopen.it/2011/12/06/prima-versione-pubblica-di-joomla-fap-1-7/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Corso introduttivo Joomla! a pinerolo</title>
		<link>http://www.itopen.it/2011/09/20/corso-introduttivo-joomla-a-pinerolo/</link>
		<comments>http://www.itopen.it/2011/09/20/corso-introduttivo-joomla-a-pinerolo/#comments</comments>
		<pubDate>Tue, 20 Sep 2011 12:19:20 +0000</pubDate>
		<dc:creator>Alessandro Pasotti</dc:creator>
				<category><![CDATA[Joomla]]></category>

		<guid isPermaLink="false">http://www.itopen.it/?p=595</guid>
		<description><![CDATA[Un corso su Joomla! nell'ambito delle iniziative per il Linux Day 2011, organizzato dall'associazione SLiP (Software Libero Pinerolo).
]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.itopen.it/wp-content/uploads/2007/10/joomlacolor.png"><img class="alignright size-full wp-image-148" title="Joomla logo quadrato" src="http://www.itopen.it/wp-content/uploads/2007/10/joomlacolor.png" alt="" width="218" height="218" /></a>SLiP (Software Libero Pinerolo) organizza un corso gratuito su Joomla!</p>
<p>Il corso, gratuito e aperto a tutti, si svolgerà in due incontri: sabato 8 ottobre 2011 e sabato 22 ottobre 2011 dalle 14:30 alle 17:30 presso il Centro Studi e Museo d&#8217;Arte Preistorica, via Brignone 9 a Pinerolo.</p>
<p>Il secondo incontro, del 22 ottobre, sarà inserito nell&#8217;ambito della programmazione dell&#8217;edizione pinerolese dell&#8217;evento nazionale &#8220;Linux Day 2011&#8243;, che si terrà il 22 ottobre 2011 dalle 9 alle 18, sempre presso il Museo.</p>
<p>Per informazioni e iscrizioni (i posti disponibili sono limitati), invia un messaggio email a</p>
<p>info@pinerolo.linux.it</p>
<p>Sito dell&#8217;associazione: <a href="http://www.pinerolo.linux.it">http://www.pinerolo.linux.it</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.itopen.it/2011/09/20/corso-introduttivo-joomla-a-pinerolo/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>GeoContent Joomla component ready for 1.7, 2.5 and newer</title>
		<link>http://www.itopen.it/2011/09/09/geocontent-joomla-component/</link>
		<comments>http://www.itopen.it/2011/09/09/geocontent-joomla-component/#comments</comments>
		<pubDate>Fri, 09 Sep 2011 09:47:34 +0000</pubDate>
		<dc:creator>Alessandro Pasotti</dc:creator>
				<category><![CDATA[GIS]]></category>
		<category><![CDATA[Joomla]]></category>
		<category><![CDATA[WebGis]]></category>

		<guid isPermaLink="false">http://www.itopen.it/?p=564</guid>
		<description><![CDATA[<strong>GeoContent Plus</strong> is a <strong>Joomla!</strong> 1.7.x and 2.5.x component that let you easily embed beautiful <strong>Google Maps</strong> or <strong>OpenLayers Maps</strong> into your <strong>Joomla!</strong> 1.7.x and 2.5.x website.<p>GeoContent gives a geographical dimension to your Joomla! website.</p>]]></description>
			<content:encoded><![CDATA[<p><object><form action="https://www.paypal.com/cgi-bin/webscr" method="post"><input type="hidden" name="cmd" value="_xclick" /><input type="hidden" name="business" value="apasotti@gmail.com" /><input type="hidden" name="item_name" value="GeoContentPlus - Joomla 1.7+ Component" /><input type="hidden" name="amount" value="45" /><input type="hidden" name="currency_code" value="EUR" /><input type="hidden" name="item_number" value="4" /><input type="hidden" name="notify_url" value="http://www.itopen.it/wp-content/plugins/wp-cart-for-digital-products/paypal.php" /><input type="hidden" name="return" value="http://www.itopen.it/ppipn/thank-you.php" /><input type="hidden" name="mrb" value="3FWGC6LFTMTUG" /><input type="hidden" name="cbt" value="" /><input type="hidden" name="custom" value="" id="eStore_custom_values" /><input type="image" src="https://www.paypal.com/en_US/IT/i/btn/btn_buynowCC_LG.gif" class="eStore_buy_now_button" alt="Buy Now"/></form></object></p>
<div id="attachment_568" class="wp-caption alignright" style="width: 310px"><img class="size-full wp-image-568" title="geocontent_plus_banner_black_shadow" src="http://www.itopen.it/wp-content/uploads/2011/09/geocontent_plus_banner_black_shadow-e1315562139531.png" alt="" width="300" height="84" /><p class="wp-caption-text">GeoContent Plus Logo</p></div>
<div><img title="joomla_17" src="http://www.itopen.it/wp-content/uploads/2011/09/joomla_17.png" alt="" width="75" height="16" /> <img class="" title="joomla_25" src="http://www.itopen.it/wp-content/uploads/2011/09/joomla_25.png" alt="" width="75" height="16" /> native!</div>
<p><a class="rounded button" href="http://www.itopen.it/geocontent_plus_docs/">Browse GeoContent Plus documentation!</a></p>
<p><a class="rounded button" href="http://joomla2.studioarborea.it/">Try GeoContent Plus demo!</a></p>
<p>If you are looking for the old GeoContent version for Joomla! 1.5, please check the <a title="GeoContent: a new Google Maps Joomla! component" href="http://www.itopen.it/2009/05/11/geocontent-a-new-google-maps-joomla-component/">original announce</a>.</p>
<h2>Introduction</h2>
<div id="attachment_621" class="wp-caption alignright" style="width: 310px"><img class="alignright size-medium wp-image-621" title="gc_map" src="http://www.itopen.it/wp-content/uploads/2011/09/geocontent_olmap-300x197.png" alt="" width="300" height="197" /><p class="wp-caption-text">The Map</p></div>
<p>GeoContent Plus is a <strong>Joomla!</strong> 1.7.x and 2.5.x component that let you easily embed beautiful <strong>Google Maps</strong> or <strong>OpenLayers Maps</strong> into your <strong>Joomla!</strong> 1.7.x and 2.5.x website.</p>
<p>Standard <strong>Joomla!</strong> articles, can be bound to geographic features such as <em>POINTs</em>, <em>LINEs</em> and <em>POLYGONs</em> and the resulting maps can be shown in the article page and in one or more overview maps.</p>
<p>A single <strong>GeoContent Item</strong> can be represented by more than one geographic type: so that you can have simultaneously a set of POINTS, some POLYGONS and some LINES for a single <strong>Joomla!</strong> article.</p>
<p><strong>GeoContent Items</strong> on the map are grouped by <strong>GeoContent Layers</strong>, graphic appearance of <strong>GeoContent Items</strong> can be fully customized defining styles attributes in the <strong>GeoContent Layers</strong> configuration panel.</p>
<p><strong>GeoContent Plus</strong> was created as a sort of <em>Geographic Index</em> to <strong>Joomla!</strong> articles, the earliest versions had a tight binding between <strong>Joomla!</strong> articles and the geometric features that <strong>GeoContent Plus</strong> was going to show on its maps. Suggestion from the users made <strong>GeoContent Plus</strong> subsequently evolve to cover more general use cases, it is now possible to create<strong>GeoContent Items</strong> which are completely unbound from existing <strong>Joomla!</strong> articles.</p>
<div id="attachment_569" class="wp-caption alignright" style="width: 310px"><img class="alignright size-medium wp-image-621" title="gc_fe_mapeditor" src="http://www.itopen.it/wp-content/uploads/2011/09/gc_fe_mapeditor-300x252.png" alt="" width="300" height="252" /><p class="wp-caption-text">The Front-End editor window</p></div>
<p>The new Access Control List (ACL) features introduced by <strong>Joomla!</strong> 1.6 are now fully supported by <strong>GeoContent Plus</strong> allowing a fine grained control over the front-end and back-end user access to the different operations available in the software.</p>
<p><strong>GeoContent Items</strong> are also language-aware: they can optionally make use of the same <strong>Joomla!</strong> language support system recently introduced for <strong>Joomla!</strong> core articles.</p>
<h2>Download</h2>
<p><strong>ComGeocontent</strong> is <strong>open source software</strong>, distributed under <a title="AGPL Licence Text" href="http://www.fsf.org/licensing/licenses/agpl-3.0.html" target="_blank"><strong>AGPL</strong></a> software license and it is also <a title="Wikipedia Free Software page" href="http://en.wikipedia.org/wiki/Free_software" target="_blank"><strong>free software</strong></a>, where “free” means that you can do (almost) whatever you want with this software but it does not mean that it costs nothing. We distribute the component only in bundle with paid 12 month support service that costs <strong>45 €</strong>.</p>
<p>To receive a copy of <strong>GeoContent</strong> you are kindly requested to pay us <strong>45 €</strong>, using the buttons located at the top or at the bottom of this page. You will receive a regular invoice at the end of the month. After a successful payment,  an email with the download link will be automatically sent to you PayPal&#8217;s account email address.</p>
<p>The money you pay will be used to further develop <strong>GeoContent</strong> and to provide professional assistance and support to those that will need it.</p>
<p>Together with 12 months support you will get lifetime software updates, that means that you can pay just once and use the software forever in how many Joomla installations you like.</p>
<p>Please use the <strong>PayPal</strong> link at the top of this page, specifying the email where the component will be sent.</p>
<p>Thank you for supporting <strong>GeoContent</strong> project!</p>
<p><span class="Apple-style-span" style="font-size: 20px; font-weight: bold;">Key features</span></p>
<div id="key-features">
<p>What makes this component unique among other mapping tools in the <strong>Joomla!</strong> galaxy is probably the level of assistance (this is really what people pays for), its ease of use, its configurability and and its Import/Export functions.</p>
<div id="import-export">
<h3>Import/Export</h3>
<p>Input functions allows you to import tracks from a <em>GPX</em> file or directly draw into a map window within your browser, all your data will also be readily available in <em>KML</em> format.</p>
</div>
<div id="place-your-maps-anywhere">
<h3>Place your maps anywhere</h3>
<p>With the <strong>GeoContent Plus</strong> core output you can place your <strong>GeoContent Plus</strong> maps in one or more pages choosing one of the available <a href="http://www.itopen.it/geocontent_plus_docs/map_renderers.html#map-renderers"><em>Map renderers</em></a>. Using <a href="http://www.itopen.it/geocontent_plus_docs/plugins.html#plugins"><em>Plugins</em></a> you can also place customized <a href="http://www.itopen.it/geocontent_plus_docs/maps.html#tag-maps"><em>Tag maps</em></a> everywhere in an article or get the map inserted automatically in all articles where a linked <strong>GeoContent Item</strong> exists.</p>
</div>
<div id="styles-more">
<h3>Styles &amp; more</h3>
<p>From the control panel interface you can configure the appearance in details:</p>
<p>for each <strong>GeoContent Layer</strong>, you can style:</p>
<ul>
<li>Line color</li>
<li>Line width</li>
<li>Polygon line color</li>
<li>Polygon fill color</li>
<li>Polygon line transparency</li>
<li>Polygon fill transparency</li>
<li>Point icon</li>
<li>Point icon size (<strong>OpenLayers Maps</strong>, <strong>Olwidget Maps</strong> and KML only: not supported in the embedded <strong>Google Maps</strong>)</li>
</ul>
<p>Of course you can configure several aspects of the main map appearance:</p>
<ul>
<li><strong>Table of Contents</strong> (TOC) type (hidden, list, select)</li>
<li>TOC position (left, top, right, bottom)</li>
<li>TOC and main map width (onyl useful for TOC position left and right)</li>
<li>Which layers should be activated at start (none, all, selected)</li>
<li>Map dimensions</li>
<li>KML icon (hide or show)</li>
</ul>
<p><strong>OpenLayers</strong> based maps (<strong>OpenLayers Maps</strong> and <strong>Olwidget Maps</strong>) supports more styling feature:</p>
<ul>
<li>Labels for features (you can choose, font, color and transparency)</li>
<li>Clustering for points (<strong>Olwidget Maps</strong> only: points which are closer than 20px at the current visualisation scale are grouped)</li>
<li>Selection style: selected items (when the user clicks on an item) are styled differently</li>
</ul>
</div>
<div id="geocoding">
<h3>Geocoding</h3>
<p><a href="http://www.itopen.it/geocontent_plus_docs/modules.html#geocoding"><em>Geocoding module</em></a> allows the user to enter an address in a form field and get either redirected to a page of your site containing a <strong>GeoContent Plus</strong> map or get the existing map in the page (if any) centered and zoomed on the address coordinates.</p>
<p>This module is quite flexible and allows some nice tricks.</p>
</div>
</div>
<div id="map-types">
<h2>Map types</h2>
<p><strong>GeoContent Plus</strong> can produce different kind of maps, allowing a broad range of use cases.</p>
<div id="overview-maps">
<h3>Overview maps</h3>
<p>An <a href="http://www.itopen.it/geocontent_plus_docs/maps.html#overview-maps"><em>Overview Map</em></a> can be used as a <em>geographic index</em> to your <strong>Joomla!</strong> contents (articles or other <strong>Joomla!</strong> elements), this kind of map is typically used as a primary or secondary home page to show how website’s contents are positioned on the globe.</p>
</div>
<div id="automatic-maps">
<h3>Automatic maps</h3>
<p>An <em>automatic map</em> is generated by a <strong>Joomla!</strong> <a href="http://www.itopen.it/geocontent_plus_docs/plugins.html#content-plugin"><em>Content plugin</em></a> which automatically adds a map to an article’s page if the article has an associated <strong>GeoContent Item</strong>.</p>
</div>
<div id="tag-maps">
<h3>Tag maps</h3>
<p>Tags maps are the most flexible type of map: they are inserted by a <strong>Joomla!</strong> <a href="http://www.itopen.it/geocontent_plus_docs/plugins.html#content-plugin"><em>Content plugin</em></a> which replaces the <cite>{geocontent}</cite>string when found in an article’s body.</p>
<p>Tags maps can be configured in depth to show or not to show the <strong>Table of Contents</strong> or certain layers.</p>
</div>
</div>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.itopen.it/2011/09/09/geocontent-joomla-component/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Joomla 1.6 development: meaningful debugging</title>
		<link>http://www.itopen.it/2011/07/15/joomla-1-6-development-meaningful-debugging/</link>
		<comments>http://www.itopen.it/2011/07/15/joomla-1-6-development-meaningful-debugging/#comments</comments>
		<pubDate>Fri, 15 Jul 2011 06:44:52 +0000</pubDate>
		<dc:creator>Alessandro Pasotti</dc:creator>
				<category><![CDATA[Joomla]]></category>
		<category><![CDATA[Tech]]></category>

		<guid isPermaLink="false">http://www.itopen.it/?p=535</guid>
		<description><![CDATA[Hi there, just a quick note about how to stop the nightmare of Joomla 1.6 lack of debugging output. First, you should install  Firebug for Joomla 1.6 plugin : now you can use fb() function to log variables directly in the Firefox firebug panel. Another nice trick I use is to put a vardie() function [...]]]></description>
			<content:encoded><![CDATA[<p>Hi there, just a quick note about how to stop the nightmare of Joomla 1.6 lack of debugging output.</p>
<p>First, you should install  <a title="Firebug for Joomla 1.6" href="http://www.webeks.net/joomla/jfirephp-in-joomla-16.html" target="_blank">Firebug for Joomla 1.6 plugin</a> :<br />
now you can use<strong> fb() </strong>function to log variables directly in the Firefox firebug panel.<br />
Another nice trick I use is to put a <strong>vardie() </strong>function at the top of index.php, the function looks like this:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">function</span> vardie<span style="color: #009900;">&#40;</span><span style="color: #000088;">$var</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
    <span style="color: #990000;">var_dump</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$var</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> 
    df<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>This (and other useful functions) can also be placed in a file called <strong>defines.php</strong> in the main folder, this file will not be overwritten on upgrades and it is automatically parsed at start.</p>
<p><strong>df()</strong>is just a fake function to trigger a stack trace if you have xdebug installed (which is another must-have PHP tool).</p>
<p>Last but not least, Joomla uses an evil try/cacth block at the to of the application dispatcher, this makes 500 error messages completely unuseful. To fix this, you can change around line 196 in includes/application.php</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #666666; font-style: italic;">// Mop up any uncaught exceptions.</span>
catch <span style="color: #009900;">&#40;</span>Exception <span style="color: #000088;">$e</span><span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
    <span style="color: #666666; font-style: italic;">// ABP: get a decent stack trace</span>
    vardie<span style="color: #009900;">&#40;</span><span style="color: #000088;">$e</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #000088;">$code</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$e</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">getCode</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    JError<span style="color: #339933;">::</span><span style="color: #004000;">raiseError</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$code</span> ? <span style="color: #000088;">$code</span> <span style="color: #339933;">:</span> <span style="color: #cc66cc;">500</span><span style="color: #339933;">,</span> <span style="color: #000088;">$e</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">getMessage</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>this way, Joomla will dump the exception with the stack trace (remember? xdebug).</p>
<p>These tricks will make your debugging experience *much* easier.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.itopen.it/2011/07/15/joomla-1-6-development-meaningful-debugging/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Joomla FAP news</title>
		<link>http://www.itopen.it/2011/04/29/joomla-fap-news/</link>
		<comments>http://www.itopen.it/2011/04/29/joomla-fap-news/#comments</comments>
		<pubDate>Fri, 29 Apr 2011 15:14:28 +0000</pubDate>
		<dc:creator>Alessandro Pasotti</dc:creator>
				<category><![CDATA[Joomla]]></category>
		<category><![CDATA[[lang_it]Accessibilità[/lang_it][lang_en]Accessibility[/lang_en]]]></category>

		<guid isPermaLink="false">http://www.itopen.it/?p=537</guid>
		<description><![CDATA[Finalmente, dopo un lungo periodo di inattività, sono riuscito a tornare a lavorare su Joomla FAP, il progetto che porto avanti da diversi anni per consentire a chi lo desidera di usare una versione accessibile di Joomla conforme alla legislazione vigente in Italia. In questi utimi mesi ho lavorato su diversi progetti, alcuni dei quali [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.itopen.it/wp-content/uploads/2007/10/joomlacolor.png"><img class="alignright size-thumbnail wp-image-148" title="Joomla logo quadrato" src="http://www.itopen.it/wp-content/uploads/2007/10/joomlacolor.thumbnail.png" alt="" width="128" height="128" /></a>Finalmente, dopo un lungo periodo di inattività, sono riuscito a tornare a lavorare su Joomla FAP, il progetto che porto avanti da diversi anni per consentire a chi lo desidera di usare una versione accessibile di Joomla conforme alla legislazione vigente in Italia.</p>
<p>In questi utimi mesi ho lavorato su diversi progetti, alcuni dei quali piuttosto importanti, che hanno consentito a Joomla FAP di mostrare la propria potenza e versatilità in situazioni anche pittosto diverse, tutte nell&#8217;ambito delle pubbliche amministrazioni.</p>
<p>Un effetto collaterale di questi lavori è stato il trasferimento nel template standard di Joomla FAP di alcune delle migliorie effettuate, il nuovo template si presenta quindi ancora più versatile del precedente.</p>
<h2>Le nuove realizzazioni:</h2>
<p>Tra i nuovi siti che abbiamo sviluppato con Joomla FAP spicca per importanza quello del maggiore ospedale del Piemonte, &#8220;le Molinette&#8221; di Torino <a href="http://www.molinette.piemonte.it">www.<strong>molinette</strong>.piemonte.it</a>.</p>
<p>Il fatto che l&#8217;ospedale abbia scelto Joomla FAP per il proprio portale ufficiale rappresenta un notevole traguardo e un indiscutibile segno della serietà del progetto nonchè della sua maturità.<br />
Sempre per conto dell&#8217;ente ospedaliero abbiamo effettuato la migrazione a Joomla FAP di due siti satelliti: la rete oncologica del Piemonte e della Valle d&#8217;Aosta <a href="http://www.reteoncologica.it ">www.reteoncologica.it </a>e il sito delle cure palliative<a href="http://www.curepalliative.it"> www.curepalliative.it </a>.<br />
Rimanendo in Piemonte (regione nella quale mi sono trasferito da un paio d&#8217;anni), abbiamo effettuato la migrazione a Joomla FAP del sito ufficiale della soprintendenza ai beni artistici e architettonici del Piemonte, un lavoro reso possibile dalla tenacia e dalla professionalità degli addetti al centro elaborazione dati (è con raro piacere che posso parlare bene di una pubblica amministrazione italiana, quindi lo faccio ad alta voce).<br />
Un&#8217;altra realizzazione, che risale a poche settimane fa, è il sito ufficiale del comune di San Giorgio di Mantova: <a href="http://www.comune.sangiorgio.mn.it">www.comune.sangiorgio.mn.it</a>, si tratta di una variante del template sviluppato a suo tempo per il Comune di Filago.</p>
<h2>Le novità del progetto Joomla FAP:</h2>
<p>Porto avanti il progetto Joomla FAP praticamente da solo da ormai 5 anni. Purtroppo durante questo periodo, malgrado il progetto sia stato utilizzato da tantissime persone, i contributi sono stati veramente pochi. Sembra che in Italia il concetto di reciprocità che è alla base del software libero non sia proprio di casa.</p>
<p>Comunque, il progetto va avanti e queste sono le principali novità:</p>
<ul>
<li>il progetto si sposta su <a href="https://github.com/elpaso/joomla-fap-15">git</a> (molto meglio di SVN e con link diretti per lo scaricamento del progetto)</li>
<li>nasce il progetto Joomla FAP 1.6 (sempre su git)</li>
<li>il nuovo template FAP ha anche un layout liquido</li>
<li>tantissimi bug sono stati sistemati</li>
<li>il nuovo template FAP ha opzionalmente delle icone invece dei tasti testuali per l&#8217;accessibilità.</li>
</ul>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.itopen.it/2011/04/29/joomla-fap-news/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Simple ACL ready for Joomla 1.5</title>
		<link>http://www.itopen.it/2010/09/24/simple-acl-ready-for-joomla-15/</link>
		<comments>http://www.itopen.it/2010/09/24/simple-acl-ready-for-joomla-15/#comments</comments>
		<pubDate>Fri, 24 Sep 2010 10:36:13 +0000</pubDate>
		<dc:creator>Alessandro Pasotti</dc:creator>
				<category><![CDATA[Joomla]]></category>

		<guid isPermaLink="false">http://www.itopen.it/?p=194</guid>
		<description><![CDATA[Simple ACL SimpleACL for Joomla helps you to restrict front-end access to particular user/section combinations. You can independently set permission to read, insert and update content items based on the section they belongs to. The component does not override default Joomla roles, those roles are always checked first. SimpleACL plays only with default com_content component [...]]]></description>
			<content:encoded><![CDATA[<p><object><form action="https://www.paypal.com/cgi-bin/webscr" method="post"><input type="hidden" name="cmd" value="_xclick" /><input type="hidden" name="business" value="apasotti@gmail.com" /><input type="hidden" name="item_name" value="Simple ACL - Joomla Component" /><input type="hidden" name="amount" value="45" /><input type="hidden" name="currency_code" value="EUR" /><input type="hidden" name="item_number" value="1" /><input type="hidden" name="notify_url" value="http://www.itopen.it/wp-content/plugins/wp-cart-for-digital-products/paypal.php" /><input type="hidden" name="return" value="http://www.itopen.it/ppipn/thank-you.php" /><input type="hidden" name="mrb" value="3FWGC6LFTMTUG" /><input type="hidden" name="cbt" value="" /><input type="hidden" name="custom" value="" id="eStore_custom_values" /><input type="image" src="https://www.paypal.com/en_US/IT/i/btn/btn_buynowCC_LG.gif" class="eStore_buy_now_button" alt="Buy Now"/></form></object></p>
<h2>Simple ACL</h2>
<p><img class="size-full wp-image-248 alignright" title="Simple ACL Logo" src="http://www.itopen.it/wp-content/uploads/2008/09/simple_acl.png" alt="Simple ACL Logo" width="100" height="100" /><br />
SimpleACL for Joomla helps you to restrict front-end access to particular user/section combinations. You can independently set permission to read, insert and update content items based on the section they belongs to.</p>
<p>The component does not override default Joomla roles, those roles are always checked first.</p>
<p>SimpleACL plays only with default com_content component and doesn&#8217;t affect other components or modules.</p>
<p>You can set a default access permission and selectively enable/block users to access content items in selected sections.</p>
<h2>What can I do with this component?</h2>
<p>A typical scenario:</p>
<ul>
<li>Your site is a company site and the company has several departments.</li>
<li>Every department has a user who is in charge for editing web content for the department.</li>
<li>Every department has its own section for content items.</li>
<li>Users should only be able to edit content in their own department.</li>
<li>There is a user who is the public relation manager, he must be able to edit content in all sections (without being Administrator).</li>
<li>There are some section whose content should be readable only by selected users.</li>
</ul>
<p>With SimpleACL you can set permissions to selected section/user combinations (or even to &#8220;Joomla! standard groups&#8221;/section combinations), this allows you to implement such a fine grained access control.</p>
<p>See also <a href="http://www.itopen.it/2010/03/13/joomla-simple-acl-recipes/">Simple ACL recipes (work in progress)</a></p>
<h2>How it works?</h2>
<p>SimpleACL works with an independent database  table that hold the permissions for user/section combinations. A system plugin checks those access rules when the user access a content item from the front-end.</p>
<p>If you want to know more about the internals of Simple ACL and how it works, please see <a class="lightbox" href="http://www.itopen.it/wp-content/uploads/2008/09/Simple-ACL-Decision-Flowchart.png">Decision Flowchart</a>.</p>
<h2>Please note that&#8230;</h2>
<ol>
<li>Default Joomla roles are not overridden and are always checked first.</li>
<li>SimpleACL works in the front-end only</li>
<li>Only authenticated users are checked for ACLs</li>
<li>&#8220;Administrator&#8221; or &#8220;Super Administrator&#8221; user are not checked for ACLs.</li>
<li>Group support for standard Joomla! groups (author, editor, publisher&#8230;) is also available</li>
<li>Custom groups creation is not supported (but you won&#8217;t miss it!)</li>
</ol>
<h2>License and costs</h2>
<p>Simple ACL for Joomla 1.5 is free software (&#8220;free&#8221; as in &#8220;free speech&#8221;), licenced under <a href="http://www.gnu.org/licenses/agpl-3.0.html">Affero General Public License</a> but I distribute it only in bundle with paid 12 month support service that costs <strong>45 €</strong>.</p>
<p>Together with 12 months support you will get lifetime software updates, that means that you can pay just once and use the software forever in how many Joomla installations you like.</p>
<p>Please use the donation link at the top and middle of this page, you will immediately receive a download link.</p>
<p>Thank you for supporting free software and Joomla Simple ACL project!</p>
<h2>Translations</h2>
<p>They go in a language file, at the moment only English is in the distribution.</p>
<p>If you need more information about the Simple ACL, please read the FAQ at the bottom of this page.</p>
<h2>What&#8217;s new in version G.x series</h2>
<p>This new version brings many enhancements:</p>
<ul>
<li>limited group support (groups are standard Joomla groups such as &#8220;registered&#8221;, &#8220;author&#8221; etc.)</li>
<li>check/uncheck all actions when editing ACLs</li>
<li>Admin users will not be shown in the user list when creating ACLs</li>
<li>limited menu integration</li>
<li>ACL menu module  (a mod_mainmenu which knows about ACLs)</li>
<li>ACL section module (a mod_sections ﻿which knows about ACLs)</li>
<li>DB backward compatible (will not overwrite your existing ACLs, but<strong> <span style="color: #ff0000;">make a backup first</span></strong>)</li>
</ul>
<p>Let&#8217;s give a closer look to some of the coolest new features&#8230;</p>
<h3>Limited group support</h3>
<p>You can now add ACLs to the following standard Joomla user groups:</p>
<ul>
<li>registered</li>
<li>author</li>
<li>editor</li>
<li>publisher</li>
<li>manager</li>
</ul>
<p>In case of ACL conflicts between group-ACLs and user-ACLs, the second will always prevail.</p>
<h3>Menu integration</h3>
<p>Many of you have asked for an ACL-aware menu.</p>
<p>You can now enable menu integration as an experimental option in Simple ACL configuration.</p>
<p>If you enable this option, Simple ACL will try to hide menu items that point to articles, sections or categories that are not accessible by the logged in user.</p>
<p>In some cases, it can happen that all menu items are hiddden, in this case the user will see an empty menu list, but Simple ACL will not be able to hide the title of the menu itself because it operates at a different level in the joomla processing flow.</p>
<h3><span style="color: #ff0000;">New: ACL menu and section modules!</span></h3>
<p>In addition to the &#8220;Menu integration&#8221; above, the package now contains two ACL modules (<strong>aclmenus</strong> and <strong>aclsections</strong>), to be used instead of standard Joomla! <strong>mod_mainmenu</strong> and <strong>mod_sections</strong>.</p>
<p>Using this new modules you can have menus and sections lists that  know when a menu item or a section can be accessed by the user, and can hide it accordingly.</p>
<h3>Screenshots</h3>

<a href='http://www.itopen.it/2010/09/24/simple-acl-ready-for-joomla-15/simpleacl_be_settings/' title='Simple ACL settings'><img width="150" height="150" src="http://www.itopen.it/wp-content/uploads/2008/10/simpleacl_be_settings-150x150.png" class="attachment-thumbnail" alt="Simple ACL settings" title="Simple ACL settings" /></a>
<a href='http://www.itopen.it/2010/09/24/simple-acl-ready-for-joomla-15/sacl_list_view/' title='Simple ACL List View'><img width="150" height="150" src="http://www.itopen.it/wp-content/uploads/2008/09/sacl_list_view-150x150.png" class="attachment-thumbnail" alt="Simple ACL List View" title="Simple ACL List View" /></a>
<a href='http://www.itopen.it/2010/09/24/simple-acl-ready-for-joomla-15/sacl_edit_view/' title='Simple ACL Edit Form'><img width="150" height="150" src="http://www.itopen.it/wp-content/uploads/2008/09/sacl_edit_view-150x150.png" class="attachment-thumbnail" alt="Simple ACL Edit Form" title="Simple ACL Edit Form" /></a>
<a href='http://www.itopen.it/2010/09/24/simple-acl-ready-for-joomla-15/simple_acl/' title='Simple ACL Logo'><img width="100" height="100" src="http://www.itopen.it/wp-content/uploads/2008/09/simple_acl.png" class="attachment-thumbnail" alt="Simple ACL Logo" title="Simple ACL Logo" /></a>
<a href='http://www.itopen.it/2010/09/24/simple-acl-ready-for-joomla-15/simple-acl-decision-flowchart/' title='Simple ACL Decision Flowchart'><img width="150" height="150" src="http://www.itopen.it/wp-content/uploads/2008/09/Simple-ACL-Decision-Flowchart-150x150.png" class="attachment-thumbnail" alt="Simple ACL Decision Flowchart" title="Simple ACL Decision Flowchart" /></a>

<h2>FAQ</h2>
<h3>Is this thing &#8220;stable&#8221; ?</h3>
<p>Yes, sure. It&#8217;s now used on several production websites.</p>
<h3>Can I limit access to a category instead of a section?</h3>
<p>Not in the current version.<br />
I will eventually implement it in a future version (but please don&#8217;t ask me when <img src='http://www.itopen.it/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  )</p>
<h3>Will Simple ACL alter in any way menu items or search results depending on user ACLs ?</h3>
<p>Yes, Simple ACL comes with some companion plugins to hide unaccessible items from search results as well as from menus and section module (mod_sections).</p>
<h3>How will I receive the software after the donation?</h3>
<p>After a successful payment, you will receive a download link via email.</p>
<p><strong>The email is automatically sent immediately after a successful payment, please check your spam folder if you don&#8217;t receive it in a few minutes.</strong></p>
<h3>Why should I pay for a free software component?</h3>
<p>I think an explanation is needed: in my career I developed a couple of free (&#8220;free&#8221; as in &#8220;free speech&#8221;) software projects (KMLMapserver, MapStorer, Joomla FAP, SWFslideshow to cite a few), all of them are also &#8220;free&#8221; as in &#8220;free lunch&#8221; but in more than ten years I did not receive one cent as a donation, most of the time those projects were funded by one or more of my customers.</p>
<p>After keeping Simple ACL unpublished for a while, I simply felt I couldn&#8217;t spend time to publish, promote and give assistance on another free software project for nothing, I was simply dedicating too much time in open-source free projects without receiving back any money.</p>
<p>That&#8217;s why instead of keeping Simple ACL hidden in my desktop I decided to distribute it for a small fee, please note that this fee goes to cover the plain costs of assistance (answering to emails, writing documentation etc.) and development of Simple ACL, I will certainly not get rich with this fees.</p>
<p>This is not in contrast with free-software philosophy: GNU Free Software Foundation philosophy not only says that you can distribute free software for money, but encourage you to do so:</p>
<p><a title="FSF GPL FAQ" href="http://www.fsf.org/licensing/licenses/gpl-faq.html#DoesTheGPLAllowMoney">http://www.fsf.org/licensing/licenses/gpl-faq.html#DoesTheGPLAllowMoney</a></p>
<p><a title="GNU Philosophy" href="http://www.gnu.org/philosophy/selling.html">http://www.gnu.org/philosophy/selling.html</a></p>
<h3>Can I distribute or sell Simple ACL?</h3>
<p>Yes, you can. But doing so, you will probably provoke a stop in the development of Simple ACL, since I will not raise enough funds to cover the costs of its development.</p>
<p>It&#8217;s up to you.</p>
<h3>Is this fee an yearly fee?</h3>
<p>No, you donate once, you get the software and one year email assistance to set it up. That&#8217;s all.<br />
I will send you all the future versions of the component (if any) for free.</p>
<h3>&#8220;Delete&#8221; ACL rule doesn&#8217;t work</h3>
<p>True, but this is not my fault, Joomla does not allow article deletion from the font-end, hence this rule is useless at the moment (but I have implemented it in case future Joomla versions support deletion from the front-end).</p>
<h3>Why &#8220;Simple&#8221; ?</h3>
<p>Well, because the objectives of this project were limited:</p>
<ul>
<li>do not touch the core of Joomla</li>
<li>be unobstrusive: you can install and remove the component without consequences</li>
<li>do not interfere with standard Joomla user and permissions: Simple ACL respect standard Joomla permissions levels, and only acts after Joomla has done its checks and controls</li>
<li>solve a simple problem: let selected users to access and/or edit selected <strong>sections</strong></li>
</ul>
<h3>I have 1000 users and 1000 sections, does Simple ACL suit my needs?</h3>
<p>Probably not: Simple ACL <strong>does not support user defined (custom) groups</strong>, this mean that you should set up 1000 ACL&#8217;s to bind your 1000 users to their 1000 sections. This is just unpractical.<br />
The latest version has limited group support. You can now add ACLs to the following standard Joomla user groups:</p>
<ul>
<li>registered</li>
<li>author</li>
<li>editor</li>
<li>publisher</li>
<li>manager</li>
</ul>
<p>In case of ACL conflicts between group-ACLs and user-ACLs, the second will always prevail (see the <a class="lightbox" href="http://www.itopen.it/wp-content/uploads/2008/09/Simple-ACL-Decision-Flowchart.png">Decision Flowchart</a> scheme for details).</p>
<h3>What kind of default access policy should I choose?</h3>
<p>Simple ACL allows you to configure a default access policy on the individual actions (Create, Update, Retrieve and Delete (the lattest not being implemented in Joomla front-end at the moment).</p>
<p>Please remember that Simple ACL rules apply only to registered users, by keeping this in mind you could have two main scenarios (other scenarios or combinations are of course possible):</p>
<p style="padding-left: 30px;">1 &#8211; Your website is completely public (everybody can see everything) but you have (for example) three authors (A, B, C) and two sections (A, B). You want user A to edit only section A, user B to edit only section B and user C to edit both. In this case, you would</p>
<blockquote>
<ul>
<li>create users A, B and C as authors (or editor or publisher)</li>
<li>set Joomla standard access to &#8220;public&#8221; for sections A, B and C (this is the default)</li>
<li>set Simple ACL default access policy to Retrieve=Allow, Create=Deny, Update=Deny, Delete=Deny</li>
<li>create one ACL for user A/section A to allow all actions (Create, Retrieve, Update, Delete)</li>
<li>create one ACL for user B/section B to allow all actions (Create, Retrieve, Update, Delete)</li>
<li>create one ACL for user C/section A to allow all actions (Create, Retrieve, Update, Delete)</li>
<li>create one ACL for user C/section B to allow all actions (Create, Retrieve, Update, Delete)</li>
</ul>
<p>2 &#8211; Your website is mainly public, but you have some private sections that you want to be accessible only from selected users. You have (for example) three authors (A, B, C) and two private sections (A, B) and you want user A able to read (and not edit) section A, user B able to read (and not edit) section B, user C able to read (and not edit) all three sections.  In this case, you would</p></blockquote>
<blockquote>
<ul>
<li>create users A, B and C as registered (remember, they don&#8217;t need to edit anything, just read)</li>
<li>create sections A, B and C and set standard Joomla access level to &#8220;registered&#8221; otherwise all user (included A and B) would be able to read section A and B while not authenticated (logged in)</li>
<li>set Simple ACL default access policy to Retrieve=Deny, Create=Deny, Update=Deny, Delete=Deny</li>
<li>create one ACL for user A/section A to allow Retrieve and deny all other actions</li>
<li>create one ACL for user B/section B to allow Retrieve and deny all other actions</li>
<li>create one ACL for user C/section A to allow Retrieve and deny all other actions</li>
<li>create one ACL for user C/section B to allow Retrieve and deny all other actions</li>
</ul>
</blockquote>
<h3>Why two different plugins?</h3>
<p><strong>System</strong> plugin must always be installed and activated otherwise Simple ACL will not work.</p>
<p><strong>Content</strong> plugin is only useful when both of the following conditions apply:</p>
<ul>
<li>in your default access policy (as set in component parameters window) Retrieve=deny</li>
<li>and you have a mixture of articles coming from allowed and denied sections in the front page</li>
</ul>
<p>If given the conditions above you don&#8217;t activate the content plugin, a single denied article in the front page will deny the whole page.</p>
<h3>What happens when a logged in user try to access/edit a denied page?</h3>
<p>A &#8220;denied page&#8221; means a page containing an article that belongs to a section non accessible by that user because of Simple ACL restrictions.<br />
The user will be redirected to a page generated by Simple ACL component (or to an URL of your choice, you can configure the URL through the component parameters configuration in the control panel). The generated deny page shows the <strong>deny message</strong> that you can change through the Simple ACL parameters settings in the control panel. The page shows also the default Simple ACL policy and the existing ACLs for that user so the user can see exactly which sections he can access.</p>
<p><object><form action="https://www.paypal.com/cgi-bin/webscr" method="post"><input type="hidden" name="cmd" value="_xclick" /><input type="hidden" name="business" value="apasotti@gmail.com" /><input type="hidden" name="item_name" value="Simple ACL - Joomla Component" /><input type="hidden" name="amount" value="45" /><input type="hidden" name="currency_code" value="EUR" /><input type="hidden" name="item_number" value="1" /><input type="hidden" name="notify_url" value="http://www.itopen.it/wp-content/plugins/wp-cart-for-digital-products/paypal.php" /><input type="hidden" name="return" value="http://www.itopen.it/ppipn/thank-you.php" /><input type="hidden" name="mrb" value="3FWGC6LFTMTUG" /><input type="hidden" name="cbt" value="" /><input type="hidden" name="custom" value="" id="eStore_custom_values" /><input type="image" src="https://www.paypal.com/en_US/IT/i/btn/btn_buynowCC_LG.gif" class="eStore_buy_now_button" alt="Buy Now"/></form></object></p>
]]></content:encoded>
			<wfw:commentRss>http://www.itopen.it/2010/09/24/simple-acl-ready-for-joomla-15/feed/</wfw:commentRss>
		<slash:comments>74</slash:comments>
		</item>
		<item>
		<title>Joomla Simple ACL recipes</title>
		<link>http://www.itopen.it/2010/03/13/joomla-simple-acl-recipes/</link>
		<comments>http://www.itopen.it/2010/03/13/joomla-simple-acl-recipes/#comments</comments>
		<pubDate>Sat, 13 Mar 2010 08:48:34 +0000</pubDate>
		<dc:creator>Alessandro Pasotti</dc:creator>
				<category><![CDATA[Joomla]]></category>

		<guid isPermaLink="false">http://www.itopen.it/?p=392</guid>
		<description><![CDATA[This page is a collection of small recipes and hints about Simple ACL Joomla component. Note: this article is still a work in progress, please leave a message if you find errors, typos or if you have any suggestion or proposal. Abbreviations in the recipes: UX = &#8220;User X&#8221; where X is a number (for example U1 = User 1, [...]]]></description>
			<content:encoded><![CDATA[<div>
<p>This page is a collection of small recipes and hints about <a title="Simple ACL project page" href="http://www.itopen.it/2008/09/24/simple-acl-ready-for-joomla-15/">Simple ACL</a> Joomla component.</p>
<p><strong><span style="color: #ff0000;">Note: this article is still a work in progress, please leave a message if you find errors, typos or if you have any suggestion or proposal.</span></strong></p>
<p>Abbreviations in the recipes:</p>
<ul>
<li>UX = &#8220;User X&#8221; where X is a number (for example U1 = User 1, U2 = User 2 etc.)</li>
<li>SX = &#8221;Section X&#8221; where X is a number (for example S1 = Section 1, S2 = Section 2 etc.)</li>
<li>ACL = a single<strong> Access Control List</strong> rule</li>
</ul>
<h2>Recipe 1 : prevent authors to edit their own articles after being approved (workflow)</h2>
<h3>Scenario</h3>
<ul>
<li>You have many authors submitting content that you or some other admins approve before being published</li>
<li>Joomla 1.5 does not prevent an author to edit again  his/her content once published</li>
<li>you want to avoid editing after approval, only admins will be able to do that</li>
</ul>
<h3>Procedure</h3>
<p>The strategy here is to block content update to all users, admins and back-end users will retain the standard Joomla behaviour.</p>
<ol>
<li>Set the <strong>default ACL</strong> to prevent all the users to update or delete content: in <strong>Components-&gt;Simple ACL-&gt;Parameters</strong> set
<ul>
<li>Create = Allow</li>
<li>Update = Deny</li>
<li>Retrieve = Allow</li>
</ul>
<ul>
<li>Delete = Deny (not implemented from Joomla front-end, but Just in case)</li>
</ul>
</li>
</ol>
<h2>Recipe 2 : public website with some section editors</h2>
<h3>Scenario</h3>
<ul>
<li>Your website is public, everybody can see everything</li>
<li>you have one section for each department in your company (S1 and S2 in this example)</li>
<li>each section has one or more users  that can add or edit content (U1 can edit S1, U2 can edit S2 and U3 can edit both)</li>
</ul>
<h3>Procedure</h3>
<p>The strategy here is to allow content retrieval by default and only block content creation or editing, individual ACLs allow editing to some selected sections/users.</p>
<ol>
<li>First thing to do is set the <strong>default ACL</strong> to prevent all the users to create or update content: in <strong>Components-&gt;Simple ACL-&gt;Parameters</strong> set
<ul>
<li>Create = Deny</li>
<li>Update = Deny</li>
<li>Retrieve = Allow</li>
<li>Delete = Deny</li>
</ul>
</li>
<li>Save the new parameters (hit &#8220;Save&#8221;)</li>
<li>Now open S1 to U1 and U3, create the following ACLs:
<ul>
<li>Section S1, User U1:  check all permissions</li>
<li>Section S1, User U3:  check all permissions</li>
</ul>
</li>
<li>Now open  S2 to U2 and U3, create the following ACLs:
<ul>
<li>Section S2, User U2:  check all permissions</li>
<li>Section S2, User U3:  check all permissions﻿﻿</li>
</ul>
</li>
</ol>
<h2>Recipe 3 : public website with some private sections</h2>
<h3>Scenario</h3>
<ul>
<li>Your website is mostly public but you have
<ul>
<li>some private sections (S1, S2 and S3)  available for browsing and/or editing to selected employees</li>
<li>some private sections (S4, S5) for your customers</li>
</ul>
</li>
<li>all your employees (U1, U2, U3) are registered users with level <strong>&#8220;author&#8221;</strong></li>
<li>all your customers are registered users with level <strong>&#8220;registered&#8221;</strong></li>
<li>since S1, S2 and S3 are not public, their Joomla access level must be set to &#8220;<strong>Registered</strong>&#8221;  (in this case it would be also possible to set it as  &#8221;<strong>Special</strong>&#8221;  since our employees level is  &#8221;Author&#8221;)</li>
<li>since S4 and S5 are not public, their Joomla access level must be set to &#8220;<strong>Registered</strong>&#8220;</li>
<li>we want to set thing up such that
<ul>
<li>U1 can view and edit S1</li>
<li>U2 can view and edit S2</li>
<li>every employee can view S3 (but nobody below admins can edit it from the front-end)</li>
<li>every employee can view and edit content in S4</li>
<li>every customer can view content in S4 and S5</li>
</ul>
</li>
</ul>
<h3>Procedure</h3>
<p>Here we are choosing a different strategy: keep all sections closed by default and selectively open sections to users.</p>
<p>Because in this example we have Customers and Employees belonging to different Joomla levels (Registered and Author) we can create some group ACLs instead of individual ones.</p>
<ol>
<li>First thing to do is set the <strong>default ACL</strong> to prevent all the users to retrieve, create, update content: in <strong>Components-&gt;Simple ACL-&gt;Parameters</strong> set
<ul>
<li>Create = Deny</li>
<li>Update = Deny</li>
<li>Retrieve = Deny</li>
<li>Delete = Deny</li>
</ul>
</li>
<li>Save the new parameters (hit &#8220;Save&#8221;)</li>
<li>Grant all users with level &#8220;Author&#8221; permission to retrieve content from S3: create an ACL on group &#8220;Author&#8221; and section S3 with Retrieve permission only</li>
<li>Open S1 to U1: create the following ACLs:
<ul>
<li>Section S1, User U1:  check all permissions</li>
</ul>
</li>
<li>Open  S2 to U2: create the following ACLs:
<ul>
<li>Section S2, User U2:  check all permissions</li>
</ul>
</li>
<li>Grant all users with level &#8220;Author&#8221; permission to create, retrieve and update content from S4: create an ACL on group &#8220;Author&#8221; and section S4, check all permissions</li>
<li>Grant all users with level &#8220;Registered&#8221; permission to retrieve content from S4: create an ACL on group &#8220;Registered&#8221; and section S4 with Retrieve permission only</li>
<li>Grant all users with level &#8220;Registered&#8221; permission to retrieve content from S5: create an ACL on group &#8220;Registered&#8221; and section S5 with Retrieve permission only</li>
</ol>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.itopen.it/2010/03/13/joomla-simple-acl-recipes/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Serving Joomla static content from a different domain</title>
		<link>http://www.itopen.it/2009/09/24/serving-joomla-static-content-from-a-different-domain/</link>
		<comments>http://www.itopen.it/2009/09/24/serving-joomla-static-content-from-a-different-domain/#comments</comments>
		<pubDate>Thu, 24 Sep 2009 10:04:01 +0000</pubDate>
		<dc:creator>Alessandro Pasotti</dc:creator>
				<category><![CDATA[Joomla]]></category>

		<guid isPermaLink="false">http://www.itopen.it/?p=331</guid>
		<description><![CDATA[Recently, we have been asked by a customer to perform some speed optimization on a heavy traffic Joomla website. After further investigations we came into the conclusion that routing all static content (images, CSS, Js) through apache webserver was opening too many connections and was one of the major causes of the website&#8217;s slowness . [...]]]></description>
			<content:encoded><![CDATA[<p>Recently, we have been asked by a customer to perform some speed optimization on a heavy traffic Joomla website.</p>
<p>After further investigations we came into the conclusion that routing all static content (images, CSS, Js) through apache webserver was opening too many connections and was one of the major causes of the website&#8217;s slowness .</p>
<p>The most obvious solution would be to serve static content from a different subdomain pointing to the same IP where Joomla is hosted, routing all the static requests through a different and faster webserver (enginx or lighhttpd to cite a few)  would,  at the same time, speed up page rendering because the browser could parallelize requests to different domains.</p>
<p>Unfortunately, Joomla does not support serving static content from a different (sub)domain,  so we started writing a plugin that allows us to serve static content from a different domain.</p>
<p>We are now in the testing phase, the plugin will be open-sourced and GPL&#8217;d but we will probably require a small fee to download in order to cover development and assistance costs.</p>
<p>If you are interested or have questions or ideas, please leave a comment below.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.itopen.it/2009/09/24/serving-joomla-static-content-from-a-different-domain/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

