<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>CMS Tutorials &amp; Reviews</title>
	
	<link>http://needforcontent.com</link>
	<description>All about Wordpress, Drupal, Joomla and a lot more!</description>
	<pubDate>Wed, 11 Nov 2009 09:29:45 +0000</pubDate>
	
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/needforcontent" type="application/rss+xml" /><feedburner:emailServiceId>needforcontent</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><item>
		<title>Prototype JavaScript Framework</title>
		<link>http://feedproxy.google.com/~r/needforcontent/~3/pPnM91Y161A/</link>
		<comments>http://needforcontent.com/prototype-javascript-framework/#comments</comments>
		<pubDate>Wed, 11 Nov 2009 09:29:45 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Ajax Frameworks]]></category>

		<category><![CDATA[ajax]]></category>

		<guid isPermaLink="false">http://needforcontent.com/?p=513</guid>
		<description><![CDATA[<p>Website: <a href="http://prototypejs.org">http://prototypejs.org</a><br />
License: MIT License</p>
<p>The Prototype JavaScript Framework is a JavaScript framework created by Sam Stephenson which provides an Ajax framework and other utilities. It is implemented as a single file of JavaScript code, usually named prototype.js. Prototype is distributed standalone, but also as part of larger projects, such as Ruby on Rails, script.aculo.us and Rico.</p>
<p>Features</p>
<p>Prototype provides various functions for developing&#8230;</p><p><a href="http://needforcontent.com/prototype-javascript-framework/">Prototype JavaScript Framework</a> is posted on <a href="http://needforcontent.com">Content Management Systems</a> Blog.
<br />
Please read our reviews on <a href="http://needforcontent.com/category/cms-books/joomla-books/">Joomla books</a> and <a href="http://needforcontent.com/category/cms-books/drupal-books/">Drupal Books</a>.</p>
]]></description>
			<content:encoded><![CDATA[<p>Website: <a href="http://prototypejs.org">http://prototypejs.org</a><br />
License: MIT License</p>
<p>The Prototype JavaScript Framework is a JavaScript framework created by Sam Stephenson which provides an Ajax framework and other utilities. It is implemented as a single file of JavaScript code, usually named prototype.js. Prototype is distributed standalone, but also as part of larger projects, such as Ruby on Rails, script.aculo.us and Rico.</p>
<p>Features</p>
<p>Prototype provides various functions for developing JavaScript applications. The features range from programming shortcuts to major functions for dealing with XMLHttpRequest.</p>
<p>Prototype also provides library functions to support classes and class-based objects, something the JavaScript language does not have. In JavaScript, object creation is prototype-based instead: an object creating function can have a prototype property, and any object assigned to that property will be used as a prototype for the objects created with that function. The Prototype framework is not to be confused with this language feature.</p>
<p>Sample utility functions<br />
The $() function</p>
<p>The dollar function, $(), can be used as shorthand for the getElementById function. To refer to an element in the DOM of an HTML page, the usual function identifying an element is:</p>
<p> document.getElementById(&#8221;id_of_element&#8221;).style.color = &#8220;#ffffff&#8221;;</p>
<p>The $() function reduces the code to:</p>
<p>   $(&#8221;id_of_element&#8221;).setStyle({color: &#8216;#ffffff&#8217;});</p>
<p>The $() function can also receives an element as parameter and will return, as in the previous example, a prototype extended object.</p>
<p>   var element_js = document.getElementById(&#8221;id_of_element&#8221;);  // usual object reference returned<br />
   var element_pt = $(element_js);                             // prototype extended object reference</p>
<p>    Note: Like the underscore (_), the $ character is a legal &#8220;word character&#8221; in JavaScript identifiers, and has no other significance in the language. It was added to the language at the same time as support for regular expressions, so that the Perl-like matching variables could be emulated, such as $` and $&#8217;.</p>
<p>The $F() function</p>
<p>Building on the $() function: the $F() function returns the value of the requested form element. For a &#8216;text&#8217; input, the function will return the data contained in the element. For a &#8217;select&#8217; input element, the function will return the currently selected value.</p>
<p> $F(&#8221;id_of_input_element&#8221;)</p>
<p>The $$() function</p>
<p>The dollar dollar function is Prototype&#8217;s CSS Selector Engine. It returns all matching elements, following the same rules as a selector in a CSS stylesheet. For example, if you want to get all <a> tags with the class &#8220;pulsate&#8221;, you would use the following:</p>
<p> $$(&#8221;a.pulsate&#8221;)</p>
<p>This returns a collection of elements. If you are using the Script.aculo.us extension of the core Prototype library, you can apply the &#8220;pulsate&#8221; (blink) effect as follows:</p>
<p> $$(&#8221;a.pulsate&#8221;).each(Effect.Pulsate);</p>
<p>The Ajax object</p>
<p>In an effort to reduce the amount of code needed to run a cross-browser XMLHttpRequest function, Prototype provides the Ajax object to abstract the different browsers. It has two main methods: Ajax.Request() and Ajax.Updater(). There are two forms of the Ajax object. Ajax.Request returns the raw XML output from an AJAX call, while the Ajax.Updater will inject the return inside a specified DOM object. The Ajax.Request below finds the values of two HTML value inputs, requests a page from the server using the values as POST values, then runs a custom function called showResponse() when complete:</p>
<p>var url = &#8220;<a href="http://www.example.com/path/server_script">http://www.example.com/path/server_script</a>&#8221;;</p>
<p>var myAjax = new Ajax.Request(url, {<br />
   parameters: {<br />
      value1: $F(&#8221;name_of_id_1&#8243;),<br />
      value2: $F(&#8221;name_of_id_2&#8243;)<br />
   },<br />
   onSuccess: showResponse,<br />
   onFailure: showError<br />
});</p>
<p>Object-oriented programming</p>
<p>Prototype also adds support for more traditional object-oriented programming. The Class.create() method is used to create a new class. A class is then assigned a prototype which acts as a blueprint for instances of the class.</p>
<p>var FirstClass = Class.create( {<br />
   // The initialize method serves as a constructor<br />
   initialize: function () {<br />
       this.data = &#8220;Hello World&#8221;;<br />
   }<br />
});</p>
<p>Extending another class:</p>
<p>Ajax.Request= Class.create( Ajax.Base, {<br />
  //Overwrite the initialize method<br />
  initialize: function(url, options) {<br />
    this.transport = Ajax.getTransport();<br />
    this.setOptions(options);<br />
    this.request(url);<br />
  },<br />
  // &#8230;more methods add &#8230;<br />
});</p>
<p>The framework function Object.extend(dest, src) takes two objects as parameters and copies the properties of the second object to the first one simulating inheritance. The combined object is also returned as a result from the function. As in the example above, the first parameter usually creates the base object, while the second is an anonymous object used solely for defining additional properties. The entire sub-class declaration happens within the parentheses of the function call.</p>
<p><a rel="nofollow" href="http://en.wikipedia.org/wiki/Prototype_JavaScript_Framework">Source</a></p>
<p><a href="http://needforcontent.com/prototype-javascript-framework/">Prototype JavaScript Framework</a> is posted on <a href="http://needforcontent.com">Content Management Systems</a> Blog.
<br />
Please read our reviews on <a href="http://needforcontent.com/category/cms-books/joomla-books/">Joomla books</a> and <a href="http://needforcontent.com/category/cms-books/drupal-books/">Drupal Books</a>.</p>
<img src="http://feeds.feedburner.com/~r/needforcontent/~4/pPnM91Y161A" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://needforcontent.com/prototype-javascript-framework/feed/</wfw:commentRss>
		<feedburner:origLink>http://needforcontent.com/prototype-javascript-framework/</feedburner:origLink></item>
		<item>
		<title>Apache Cocoon</title>
		<link>http://feedproxy.google.com/~r/needforcontent/~3/CmIcwik4_K0/</link>
		<comments>http://needforcontent.com/apache-cocoon/#comments</comments>
		<pubDate>Tue, 10 Nov 2009 20:11:58 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Java Frameworks]]></category>

		<guid isPermaLink="false">http://needforcontent.com/?p=845</guid>
		<description><![CDATA[<p>Apache Cocoon, usually just called Cocoon, is a web application framework built around the concepts of pipeline, separation of concerns and component-based web development. The framework focuses on XML and XSLT publishing and is built using the Java programming language. The flexibility afforded by relying heavily on XML allows rapid content publishing in a variety of formats including HTML, PDF,&#8230;</p><p><a href="http://needforcontent.com/apache-cocoon/">Apache Cocoon</a> is posted on <a href="http://needforcontent.com">Content Management Systems</a> Blog.
<br />
Please read our reviews on <a href="http://needforcontent.com/category/cms-books/joomla-books/">Joomla books</a> and <a href="http://needforcontent.com/category/cms-books/drupal-books/">Drupal Books</a>.</p>
]]></description>
			<content:encoded><![CDATA[<p>Apache Cocoon, usually just called Cocoon, is a web application framework built around the concepts of pipeline, separation of concerns and component-based web development. The framework focuses on XML and XSLT publishing and is built using the Java programming language. The flexibility afforded by relying heavily on XML allows rapid content publishing in a variety of formats including HTML, PDF, and WML. The content management systems Apache Lenya and Daisy have been created on top of the framework. Cocoon is also commonly used as a data warehousing ETL tool or as middleware for transporting data between systems.</p>
<h2> Sitemap</h2>
<p>The sitemap is at the core of Cocoon. It&#8217;s here that the web site developer configures the different Cocoon components, and defines the Client/Server interactions in what Cocoon refers to as the Pipelines.</p>
<h2> Components</h2>
<p>The components within Cocoon are grouped by function.</p>
<h3> Matchers</h3>
<p>Matchers are used to match user requests such as URLs or cookies against wildcard or regular expression patterns. Each user request is tested against matchers in the sitemap until a match is made. It is within a matcher that the response to a particular request is specified.</p>
<h3> Generators</h3>
<p>Generators create a stream of data for further processing. This stream can be generated from an existing XML document or there are generators that can create XML from scratch to represent something on the server, such as a directory structure or image data.</p>
<p> XSP Pages
<p>One type of generator is an XML Server Page (XSP page ), an XML document containing tag-based directives that specify how to generate dynamic content at request time. Upon Cocoon processing, these directives are replaced by generated content so that the resulting, augmented XML document can be subject to further processing (typically an XSLT transformation). XSP pages are transformed into Cocoon producers, typically as Java classes, though any scripting language for which a Java-based processor exists could also be used.</p>
<p>Directives can be either built-in (&#8221;XSP&#8221;) or user-defined processing tags, both of which are defined in logicsheets. Tags are defined using XSLT templates that describe how the tags (represented as XML nodes) are transformed into other XML nodes or into procedural code such as Java. The tags are used to embed procedural logic, substitute expressions, retrieve information from the web server environment, and other operations.</p>
<p>Note that XSP is deprecated in recent releases of Cocoon.</p>
<h3> Transformers</h3>
<p>Transformers take a stream of data and change it in some way. The most common transformations are performed with XSLT to change one xml format into another. But there are also transformers that take other forms of data (SQL commands for example).</p>
<h3> Serializers</h3>
<p>A serializer turns an XML event stream into a sequence of bytes (such as HTML) that can be returned to the client. There are serializers that allow you to send the data in many different formats including HTML, XHTML, PDF, RTF, SVG, WML and plain text, for example.</p>
<h3> Selectors</h3>
<p>Selectors offer the same capabilities as a switch statement. They are able to select particular elements of a request and choose the correct pipeline part to use.</p>
<h3> Views</h3>
<p>Views are mainly used for testing. A view is an exit point in a pipeline. You can put out the XML-Stream which is produced till this point. So you can see if the application is working right.</p>
<h3> Readers</h3>
<p>Publish content without parsing it (no XML processing). Used for images and such.</p>
<h3> Actions</h3>
<p>Actions are Java classes that execute some business logic or manage new content production.</p>
<h2> The Pipeline</h2>
<p>A pipeline is used to specify how the different Cocoon components interact with a given request to produce a response. A typical pipeline consists of a generator, followed by zero or more transformers, and finally a serializer.</p>
<p>See also XProc models and standardization.</p>
<p><a rel="nofollow" href="http://en.wikipedia.org/wiki/Apache_Cocoon">Source</a></p>
<p><a href="http://needforcontent.com/apache-cocoon/">Apache Cocoon</a> is posted on <a href="http://needforcontent.com">Content Management Systems</a> Blog.
<br />
Please read our reviews on <a href="http://needforcontent.com/category/cms-books/joomla-books/">Joomla books</a> and <a href="http://needforcontent.com/category/cms-books/drupal-books/">Drupal Books</a>.</p>
<img src="http://feeds.feedburner.com/~r/needforcontent/~4/CmIcwik4_K0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://needforcontent.com/apache-cocoon/feed/</wfw:commentRss>
		<feedburner:origLink>http://needforcontent.com/apache-cocoon/</feedburner:origLink></item>
		<item>
		<title>JavaServer Faces</title>
		<link>http://feedproxy.google.com/~r/needforcontent/~3/B1iEfxIw9go/</link>
		<comments>http://needforcontent.com/javaserver-faces/#comments</comments>
		<pubDate>Tue, 10 Nov 2009 20:03:44 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Java Frameworks]]></category>

		<guid isPermaLink="false">http://needforcontent.com/?p=823</guid>
		<description><![CDATA[<p>JavaServer Faces (JSF) is a Java-based Web application framework intended to simplify development of user interfaces for Java EE applications. Unlike request-driven MVC web frameworks, JSF uses a component-based approach. The state of UI components is saved when the client requests a new page and restored when the response is returned. Out of the box, JSF uses JavaServer Pages (JSP)&#8230;</p><p><a href="http://needforcontent.com/javaserver-faces/">JavaServer Faces</a> is posted on <a href="http://needforcontent.com">Content Management Systems</a> Blog.
<br />
Please read our reviews on <a href="http://needforcontent.com/category/cms-books/joomla-books/">Joomla books</a> and <a href="http://needforcontent.com/category/cms-books/drupal-books/">Drupal Books</a>.</p>
]]></description>
			<content:encoded><![CDATA[<p>JavaServer Faces (JSF) is a Java-based Web application framework intended to simplify development of user interfaces for Java EE applications. Unlike request-driven MVC web frameworks, JSF uses a component-based approach. The state of UI components is saved when the client requests a new page and restored when the response is returned. Out of the box, JSF uses JavaServer Pages (JSP) for its display technology, but can also accommodate other technologies (such as XUL and Facelets). JSF includes:</p>
<p>A set of APIs for representing user interface (UI) components and managing their state, handling events and input validation, converting values, defining page navigation, and supporting internationalization and accessibilityA default set of UI componentsTwo JavaServer Pages (JSP) custom tag libraries for expressing a JavaServer Faces interface within a JSP page.A server-side event modelState managementManaged Beans (JavaBeans created with dependency injection)Unified Expression Language for both JSP 2.0 and JSF 1.2</p>
<p>The JSF specification was developed under the Java Community Process as JSR 127, which defined JSF 1.0 and 1.1, and JSR 252 which defined JSF 1.2. Upcoming JSF 2.0 is being developed as JSR 314.</p>
<h2>JSF Versions</h2>
<p>JSF 1.0 (2004-03-11) — the initial release of the JSF specification.JSF 1.1 (2004-05-27) — bug fix release. There were no spec or HTML renderkit changes.JSF 1.2 (2006-05-11) — latest release.provide XML Schema for the config files, instead of using DTDenhancements to allow faces applications to handle multi-frame, or multi-window UI designsenhancements to the f: tag library for improved TCK coverage, f:view lifetime events, and other small featuresenhancements to the decorator support for API objectssecurity enhancements for client side state savingsolve the &#8220;duplicate button press&#8221; problem (pressing a button twice to cause 2 submissions)re-organize the spec into normative, and non-normative sections, to make implementation easierportlet related bug-fixesbug fixes that require minimal specification changesJSF 2.0 (expected in 2009) - major revision of the specification under development. Planned to coincide with Java EE 6.</p>
<h2>JSF and Ajax</h2>
<p>JSF is often mentioned together with Ajax, a Rich Internet application technology. Ajax is a combination of technologies that makes it possible to create richer user interfaces. The user interface components in Mojarra (the JSF reference implementation) and MyFaces were originally developed in HTML. Because JSF supports multiple output formats, Ajax-enabled components can easily be added to enrich JSF-based user interfaces. The JSF 2.0 specification intends to improve support for Ajax by allowing UI logic to run partly on the client and not only on the server, and by providing support for graceful degradation when JavaScript is disabled in the browser.</p>
<h3>Ajax-enabled JSF components and frameworks</h3>
<p>The following companies and projects offer Ajax-based JSF implementations or blueprints or component libraries:</p>
<p>Oracle ADF Faces Rich Client, Oracle Application Development FrameworkBackbase Enterprise Ajax — JSF Edition, Ajax frameworkICEfaces, open-source, Java JSF extension framework and rich components, Ajax without JavaScriptjBoss RichFaces and Ajax4jsf, Ajax-enabled JSF ComponentsMyFaces, JSF Implementation with Ajax ComponentsSun Java BluePrints AJAX ComponentsZK Ajax framework with JSF componentsPrimeFacesOpenFaces Ajax-powered JSF components, an Ajax framework and a client-side validation frameworkMojarra Scales</p>
<h2>Comparison to other Web-GUI Frameworks</h2>
<h3>Struts</h3>
<p>Struts is a popular MVC framework from the Apache Software Foundation. It provides page-at-a-time MVC and does not have a component model in the style of JSF. Pages are mapped to models with a dispatch servlet (controller) piping input to actions. Struts applications use JSPs to render views and are amenable to mix-and-match jsp taglib use. (See also Apache Beehive)</p>
<h3>WebObjects / Wotonomy</h3>
<p>WebObjects is an early web-application framework that was originally developed by NeXT Software, Inc. then acquired by Apple Computer when it acquired NeXT. It contains an MVC architecture with a component and event model and lifecycle similar to JSF. It is deployable without J2EE (its original configuration), or can be deployed in a servlet container — its dispatcher object acting as the entry-point of a J2EE web application. Unlike JSF&#8217;s default case, components are not defined in JSP files but are in .wo directories containing any or all of html/xml/wml template files, a .wod file to map fields and actions to Java code, and a .java class. A template file provides the rendering/layout and may include other WebObjects components, rather than the delegated RenderKit approach used by default in JSF. It is a halfway-point between the delegated and directly-rendered approaches used in JSF.</p>
<p>WebObjects also includes a layered architecture with one of the earliest Object-Relational Mapping frameworks, Enterprise Objects Framework.</p>
<p>Wotonomy is a clean-room, open-source re-implementation of the WebObjects frameworks licensed under LGPL. It attempts to implement all parts of WebObjects, and has implemented the whole MVC web-GUI stack. As a clone of WebObjects, it differs from JSF in identical ways, except where it is incomplete.</p>
<h3>Apache Tapestry</h3>
<p>Tapestry is an open-source framework for creating dynamic, robust, scalable web applications in Java. Tapestry builds upon the standard Java Servlet API, and so it works in any servlet container or application server. Unlike JSF, Tapestry does not use JSP as the default view technology — instead preferring an alternate templating engine that allows for easy HTML preview and editing (similar to the JSF-based Facelets).</p>
<h3>Microsoft ASP.NET</h3>
<p>The JSF request/response life cycle was initially designed for JSP compatibility, so renders before the object graph has been built on initial page load. This means that JSF cannot handle Get requests. ASP.Net has always built an object model before performing rendering, and thus does not have this and related complications.</p>
<p>JSF features a component based approach to WebApplication development similar to ASP.NET from Microsoft. In ASP.NET v1, component rendering code was bundled with the UI component, unlike JSF, where rendering and component interfaces can be separated, thus allowing for customization of the renderer. ASP.NET v2 introduced the control adapter framework allowing the default rendering to be overridden by third-party code.</p>
<p>Business code is connected to the UI components by subscribing to events generated by the components and stored in a separate file (&#8221;code behind&#8221;). Thus a typical ASP.NET page consists of a (HTML) file describing the visual page layout (design), and a file with the page logic (code). Both files are treated as one single entity by Visual Studio.</p>
<p>According to the author of the book Core JSF, JSF offers a means for Java to compete with ASP.Net/Visual Studio in the area of Rapid application development (RAD).</p>
<h2>Latest Developments</h2>
<p>In the latest still unreleased public draft for JEE6, Facelets (which was designed specifically for Java Server Faces) will be adopted as the official view technology for JSF 2.0. This will eliminate the well-known life-cycle conflicts that existed with JSP forcing workarounds by Java developers. Facelets will also allow easier tag creation using markup instead of Java code, the chief complaint against JSF.</p>
<p>The new JSF developments will also see the usage of Java EE5 style annotations such as @ManagedBean and @ManagedProperty which will lead to a reduction in the size of the faces-config.xml config file. However, navigation still needs to be done in the configuration file.</p>
<p>There will also be changes to the JSF lifecycle to account for AJAX which will make AJAX development using JSF feel more natural.</p>
<p>The latest JSF release will also have built-in capability to handle resources like images, CSS and Javascript and refer to them using logical names and also grouping resources into libraries and versioning.</p>
<p>JSF 2.0 also includes a number of other changes like adding support for events, RAILS_ENV style development stages and significantly expanding the standard set of components.</p>
<h2>Popular Extensions and Libraries</h2>
<ul>
<li>Apache Trinidad (Robust component library)</li>
<li>ICEFaces (Component library and AJAX framework)</li>
<li>OcpSoft PrettyFaces (Bookmarkable URLs, Url Rewriting, and Page-load actions)</li>
<li>Exadel Fiji (Flex-based Charts and Graphs)</li>
<li>Spring Framework Integration (Dependency Injection Extensions)</li>
</ul>
<p><a rel="nofollow" href="http://en.wikipedia.org/wiki/JavaServer_Faces">Source</a></p>
<p><a href="http://needforcontent.com/javaserver-faces/">JavaServer Faces</a> is posted on <a href="http://needforcontent.com">Content Management Systems</a> Blog.
<br />
Please read our reviews on <a href="http://needforcontent.com/category/cms-books/joomla-books/">Joomla books</a> and <a href="http://needforcontent.com/category/cms-books/drupal-books/">Drupal Books</a>.</p>
<img src="http://feeds.feedburner.com/~r/needforcontent/~4/B1iEfxIw9go" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://needforcontent.com/javaserver-faces/feed/</wfw:commentRss>
		<feedburner:origLink>http://needforcontent.com/javaserver-faces/</feedburner:origLink></item>
		<item>
		<title>Orinoco Framework</title>
		<link>http://feedproxy.google.com/~r/needforcontent/~3/GZvpmRSjlkU/</link>
		<comments>http://needforcontent.com/orinoco-framework/#comments</comments>
		<pubDate>Tue, 10 Nov 2009 19:48:58 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[PHP Frameworks]]></category>

		<guid isPermaLink="false">http://needforcontent.com/?p=798</guid>
		<description><![CDATA[<p>The Orinoco Framework is an open source, object-oriented, full-stack web framework implemented in PHP and released under the MIT License. The framework follows the Model-View-Controller architecture and implements the Model 2 design paradigm. Like any other MVC frameworks, Orinoco Framework allows developer to create web applications using less code and easily maintainable project. The framework&#8217;s goal is to help developers&#8230;</p><p><a href="http://needforcontent.com/orinoco-framework/">Orinoco Framework</a> is posted on <a href="http://needforcontent.com">Content Management Systems</a> Blog.
<br />
Please read our reviews on <a href="http://needforcontent.com/category/cms-books/joomla-books/">Joomla books</a> and <a href="http://needforcontent.com/category/cms-books/drupal-books/">Drupal Books</a>.</p>
]]></description>
			<content:encoded><![CDATA[<p>The Orinoco Framework is an open source, object-oriented, full-stack web framework implemented in PHP and released under the MIT License. The framework follows the Model-View-Controller architecture and implements the Model 2 design paradigm. Like any other MVC frameworks, Orinoco Framework allows developer to create web applications using less code and easily maintainable project. The framework&#8217;s goal is to help developers focus on the application design process rather than starting a project from its core which then help speed-up development time. Orinoco Framework has a built-in methods and functions for doing common web application tasks.</p>
<h2> History</h2>
<p>Orinoco Framework was conceived in early 2007 by Ryan Yonzon and released as open source in August 2008. Orinoco Framework was then a part of an internal development in developing small and medium scale websites and web applications but then extracted for general purpose MVC web framework and later released as an open source project.</p>
<h2> Features</h2>
<p>Very lightweight.Full-stack framework (Model, View and Controller).Integrated Object-relational mapping (ORM).Supports multiple table join.Clean and Elegant URL scheme.Pure PHP configuration.Customizable route and URLs.Can work with various AJAX libraries.<br />
<h2> Technical overview</h2>
<p>Like any other web frameworks, Orinoco Framework follows and encourages the use of the Model-View-Controller architectural pattern. But unlike other frameworks, it doesn’t provide any generators for auto constructing skeletal PHP modules or templates (such as scaffolding, CRUD UI, login system, etc.). But it provides an easy to configure PHP config files (database connection, route and application specific configs).</p>
<p>Orinoco Framework provides a full-stack solution for developers by integrating ORM modules and CRUD functionalities.</p>
<p>Orinoco Framework relies on Apache server to run and MySQL for its RDMS (future release will include support for SQLite, PostgreSQL and other open source RDMS). It is also tested to work with JQuery, Prototype and Script.aculo.us for Ajax.</p>
<p><a rel="nofollow" href="http://en.wikipedia.org/wiki/Orinoco_Framework">Source</a></p>
<p><a href="http://needforcontent.com/orinoco-framework/">Orinoco Framework</a> is posted on <a href="http://needforcontent.com">Content Management Systems</a> Blog.
<br />
Please read our reviews on <a href="http://needforcontent.com/category/cms-books/joomla-books/">Joomla books</a> and <a href="http://needforcontent.com/category/cms-books/drupal-books/">Drupal Books</a>.</p>
<img src="http://feeds.feedburner.com/~r/needforcontent/~4/GZvpmRSjlkU" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://needforcontent.com/orinoco-framework/feed/</wfw:commentRss>
		<feedburner:origLink>http://needforcontent.com/orinoco-framework/</feedburner:origLink></item>
		<item>
		<title>CakePHP</title>
		<link>http://feedproxy.google.com/~r/needforcontent/~3/7zPUReCE1H4/</link>
		<comments>http://needforcontent.com/cakephp/#comments</comments>
		<pubDate>Tue, 10 Nov 2009 19:48:22 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[PHP Frameworks]]></category>

		<guid isPermaLink="false">http://needforcontent.com/?p=796</guid>
		<description><![CDATA[<p>CakePHP is an open source web application framework for producing web applications. It is written in PHP, modeled after the concepts of Ruby on Rails, and distributed under the MIT License.</p>
History
<p>CakePHP started in 2005, when Ruby on Rails was gaining popularity. The community has since grown and spawned several sub-projects. CakePHP is not a port of Ruby on Rails&#8230;</p><p><a href="http://needforcontent.com/cakephp/">CakePHP</a> is posted on <a href="http://needforcontent.com">Content Management Systems</a> Blog.
<br />
Please read our reviews on <a href="http://needforcontent.com/category/cms-books/joomla-books/">Joomla books</a> and <a href="http://needforcontent.com/category/cms-books/drupal-books/">Drupal Books</a>.</p>
]]></description>
			<content:encoded><![CDATA[<p>CakePHP is an open source web application framework for producing web applications. It is written in PHP, modeled after the concepts of Ruby on Rails, and distributed under the MIT License.</p>
<h2>History</h2>
<p>CakePHP started in 2005, when Ruby on Rails was gaining popularity. The community has since grown and spawned several sub-projects. CakePHP is not a port of Ruby on Rails to PHP, but appropriates many of its useful concepts.</p>
<h2>Features of CakePHP</h2>
<p>Like Rails, CakePHP makes it easier for the user to interface with the database with the Active record pattern. It also encourages use of the model-view-controller architectural pattern. It&#8217;s features include:</p>
<ul>
<li>Compatible with versions 4 and 5 of PHP</li>
<li>Integrated CRUD for datasource interaction</li>
<li>Application scaffolding</li>
<li>MVC architecture</li>
<li>Built-in validation, Data sanitization, and Internationalization and localization</li>
<li>Various Behaviors, Components and Helpers to minimize development time</li>
<li>Unit testing using the SimpleTest framework, available in CakePHP version 1.2</li>
</ul>
<h3>Console Applications</h3>
<p>CakePHP offers a CLI accessed by the &#8220;cake&#8221; command. There are several core console applications available in the library, among them:</p>
<p>&#8220;acl&#8221; for the management of Access Control Lists&#8221;bake&#8221; for the generation of models, controllers and views&#8221;i18n&#8221; for application internationalization&#8221;schema&#8221; for database schema creation and migration.&#8221;testsuite&#8221; for running unit tests</p>
<p>Developers can also create their own &#8220;shells&#8221; and shared functionality across these shells called &#8220;tasks&#8221; (in CakePHP&#8217;s parlance). The scripts have access to the application&#8217;s models and controllers. An example use-case for this would be the scheduled update of the application&#8217;s data from an RSS or other data feed, with the full power of the application logic and data relationships created with CakePHP.</p>
<p><a rel="nofollow" href="http://en.wikipedia.org/wiki/CakePHP">Source</a></p>
<p><a href="http://needforcontent.com/cakephp/">CakePHP</a> is posted on <a href="http://needforcontent.com">Content Management Systems</a> Blog.
<br />
Please read our reviews on <a href="http://needforcontent.com/category/cms-books/joomla-books/">Joomla books</a> and <a href="http://needforcontent.com/category/cms-books/drupal-books/">Drupal Books</a>.</p>
<img src="http://feeds.feedburner.com/~r/needforcontent/~4/7zPUReCE1H4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://needforcontent.com/cakephp/feed/</wfw:commentRss>
		<feedburner:origLink>http://needforcontent.com/cakephp/</feedburner:origLink></item>
		<item>
		<title>Zenphoto</title>
		<link>http://feedproxy.google.com/~r/needforcontent/~3/-6vEUfvrM20/</link>
		<comments>http://needforcontent.com/zenphoto/#comments</comments>
		<pubDate>Tue, 10 Nov 2009 09:04:29 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Image Galleries]]></category>

		<category><![CDATA[image gallery script]]></category>

		<guid isPermaLink="false">http://needforcontent.com/?p=511</guid>
		<description><![CDATA[<p>Website: <a href="http://www.zenphoto.org">http://www.zenphoto.org</a><br />
License: GPL</p>
<p>Zenphoto is an online photo gallery application designed to be &#8220;a simpler web photo album.&#8221; It includes dynamic image processing, folder-based albums, editable titles and descriptions powered by AJAX, comments, themes, online uploads, and simple image management.</p>
<p>History</p>
<p>Zenphoto was started from scratch by Tristan Harward in May 2005 after several articles were posted on weblogs citing the need for&#8230;</p><p><a href="http://needforcontent.com/zenphoto/">Zenphoto</a> is posted on <a href="http://needforcontent.com">Content Management Systems</a> Blog.
<br />
Please read our reviews on <a href="http://needforcontent.com/category/cms-books/joomla-books/">Joomla books</a> and <a href="http://needforcontent.com/category/cms-books/drupal-books/">Drupal Books</a>.</p>
]]></description>
			<content:encoded><![CDATA[<p>Website: <a href="http://www.zenphoto.org">http://www.zenphoto.org</a><br />
License: GPL</p>
<p>Zenphoto is an online photo gallery application designed to be &#8220;a simpler web photo album.&#8221; It includes dynamic image processing, folder-based albums, editable titles and descriptions powered by AJAX, comments, themes, online uploads, and simple image management.</p>
<p>History</p>
<p>Zenphoto was started from scratch by Tristan Harward in May 2005 after several articles were posted on weblogs citing the need for a better solution than those already existing. Development of the first version moved swiftly and was driven by user comments on Harward&#8217;s weblog at trisweb.com. The first available version was 0.8, released on September 15, 2005.</p>
<p>Zenphoto is now a team based application including many active developers. The team released the first major ZenPhoto upgrade in 8 months on November 3, 2007, version 1.1.</p>
<p>Technical description</p>
<p>One of zenphoto&#8217;s most unusual features is the image processor, which routes all image requests through a single dynamic program. Based on the parameters given, the image processor resizes and crops the image and returns the result. This results in the ability to request any permutation of an image within a theme or web page.</p>
<p>In general, Zenphoto uses a technical philosophy of simplicity and efficiency. Data are not retrieved until requested (lazy evaluation) and algorithms are optimized to be fast for their intended purpose.</p>
<p><a rel="nofollow" href="http://en.wikipedia.org/wiki/Zenphoto">Source</a></p>
<p><a href="http://needforcontent.com/zenphoto/">Zenphoto</a> is posted on <a href="http://needforcontent.com">Content Management Systems</a> Blog.
<br />
Please read our reviews on <a href="http://needforcontent.com/category/cms-books/joomla-books/">Joomla books</a> and <a href="http://needforcontent.com/category/cms-books/drupal-books/">Drupal Books</a>.</p>
<img src="http://feeds.feedburner.com/~r/needforcontent/~4/-6vEUfvrM20" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://needforcontent.com/zenphoto/feed/</wfw:commentRss>
		<feedburner:origLink>http://needforcontent.com/zenphoto/</feedburner:origLink></item>
		<item>
		<title>Fuse Framework</title>
		<link>http://feedproxy.google.com/~r/needforcontent/~3/qIpUaAX_HTI/</link>
		<comments>http://needforcontent.com/fuse-framework/#comments</comments>
		<pubDate>Mon, 09 Nov 2009 19:48:34 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[PHP Frameworks]]></category>

		<guid isPermaLink="false">http://needforcontent.com/?p=797</guid>
		<description><![CDATA[<p>FUSE is a PHP framework created by Jim Keller that uses Model-view-controller architecture along with Object-relational mapping Data Modeling concepts to provide tools for rapid PHP development.</p>
History
<p>FUSE was developed in response to the need for a powerful but simple framework for PHP that included concepts from the increasingly popular MVC framework Ruby on Rails. FUSE endeavors to be adaptable&#8230;</p><p><a href="http://needforcontent.com/fuse-framework/">Fuse Framework</a> is posted on <a href="http://needforcontent.com">Content Management Systems</a> Blog.
<br />
Please read our reviews on <a href="http://needforcontent.com/category/cms-books/joomla-books/">Joomla books</a> and <a href="http://needforcontent.com/category/cms-books/drupal-books/">Drupal Books</a>.</p>
]]></description>
			<content:encoded><![CDATA[<p>FUSE is a PHP framework created by Jim Keller that uses Model-view-controller architecture along with Object-relational mapping Data Modeling concepts to provide tools for rapid PHP development.</p>
<h2>History</h2>
<p>FUSE was developed in response to the need for a powerful but simple framework for PHP that included concepts from the increasingly popular MVC framework Ruby on Rails. FUSE endeavors to be adaptable and scalable while still providing minimal barrier of entry for PHP developers looking for an introduction to MVC development.</p>
<h2>Features</h2>
<ul>
<li>Object Relational Mapping / ActiveRecordFully featured templating systemBuiltin</li>
<li>User object with granular ACL capabilities</li>
<li>URI Router removes the need for ugly URIs and often eliminates the need for query strings</li>
<li>Database abstraction layer (FuseDB) allows for portability among different database systems</li>
<li>FuseBRIJ object allows PHP functions to be executed directly from Javascript, providing AJAX functionality</li>
<li>Photo Album object allows simple management of photos alongside data</li>
<li>Configuration manager for easily deploying separate environments (development, staging, production)</li>
</ul>
<p><a rel="nofollow" href="http://en.wikipedia.org/wiki/Fuse_Framework">Source</a></p>
<p><a href="http://needforcontent.com/fuse-framework/">Fuse Framework</a> is posted on <a href="http://needforcontent.com">Content Management Systems</a> Blog.
<br />
Please read our reviews on <a href="http://needforcontent.com/category/cms-books/joomla-books/">Joomla books</a> and <a href="http://needforcontent.com/category/cms-books/drupal-books/">Drupal Books</a>.</p>
<img src="http://feeds.feedburner.com/~r/needforcontent/~4/qIpUaAX_HTI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://needforcontent.com/fuse-framework/feed/</wfw:commentRss>
		<feedburner:origLink>http://needforcontent.com/fuse-framework/</feedburner:origLink></item>
		<item>
		<title>TinyWebGallery</title>
		<link>http://feedproxy.google.com/~r/needforcontent/~3/d6cTlgZFy18/</link>
		<comments>http://needforcontent.com/tinywebgallery/#comments</comments>
		<pubDate>Mon, 09 Nov 2009 09:02:54 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Image Galleries]]></category>

		<category><![CDATA[image gallery script]]></category>

		<guid isPermaLink="false">http://needforcontent.com/?p=509</guid>
		<description><![CDATA[<p>Website: <a href="http://www.tinywebgallery.com">http://www.tinywebgallery.com</a><br />
License: GPL</p>
<p>The TinyWebGallery (TWG) is a photo album / gallery released under the Open Source license GPL. It is a server based gallery script for images which uses Ajax, PHP, XML and the graphic library Gdlib / ImageMagick.</p>
<p>History</p>
<p>TinyWebGallery is written by Michael Dempfle and was first released on the 24th February 2005. It is based on a small image&#8230;</p><p><a href="http://needforcontent.com/tinywebgallery/">TinyWebGallery</a> is posted on <a href="http://needforcontent.com">Content Management Systems</a> Blog.
<br />
Please read our reviews on <a href="http://needforcontent.com/category/cms-books/joomla-books/">Joomla books</a> and <a href="http://needforcontent.com/category/cms-books/drupal-books/">Drupal Books</a>.</p>
]]></description>
			<content:encoded><![CDATA[<p>Website: <a href="http://www.tinywebgallery.com">http://www.tinywebgallery.com</a><br />
License: GPL</p>
<p>The TinyWebGallery (TWG) is a photo album / gallery released under the Open Source license GPL. It is a server based gallery script for images which uses Ajax, PHP, XML and the graphic library Gdlib / ImageMagick.</p>
<p>History</p>
<p>TinyWebGallery is written by Michael Dempfle and was first released on the 24th February 2005. It is based on a small image script that was developed from Rainer Hungershausen and Mogh. In April 2006 the project moved to the current domain and is right now listed as 3rd most popular php script on hotscripts.com.</p>
<p>Currently the project is developed by Michael Dempfle and supported by ~40 translators and an active community.</p>
<p>The TinyWebGallery has also released a standalone version of Flash Uploader on the 15th August 2006 as &#8216;TWG Flash Uploader&#8217;. This uploader is also available as Joomla component since the 1st August 2007 for Joomla 1.0.x and 1.5.x.</p>
<p>The latest current release version is 1.7.7.2 (15th May 2009).</p>
<p>Overview</p>
<p>The user interface offers different Ajax and Html modes and can be customized by skins or an integrated color manager. The image gallery can be configured by an administration area and it is possible to customize each individual album by text files. Files can be upload with the integrated freeware TWG Flash Uploader.</p>
<p>TinyWebGallery includes the follow features</p>
<p>    * Ajax + Flash navigation with sliding thumbnails<br />
    * XML based - no database needed<br />
    * Password protected administration area<br />
    * User and rights management<br />
    * Keyboard navigation (arrow keys)<br />
    * Rate, comments, counter functionality<br />
    * 4 different slideshow types<br />
    * Protected galleries<br />
    * Supported image formats JPG, GIF, PNG<br />
    * Text and image watermarks<br />
    * Video/Audio support like avi, mov, mp3, mpg, swf, Videos from Youtube and Myvideo<br />
    * Upload by TWG Flash Uploader or FTP<br />
    * Fullscreen mode<br />
    * Remote picture support<br />
    * Display of IPTC and Exif data of the images<br />
    * Multilingualism</p>
<p><a rel="nofollow" href="http://en.wikipedia.org/wiki/TinyWebGallery">Source</a></p>
<p><a href="http://needforcontent.com/tinywebgallery/">TinyWebGallery</a> is posted on <a href="http://needforcontent.com">Content Management Systems</a> Blog.
<br />
Please read our reviews on <a href="http://needforcontent.com/category/cms-books/joomla-books/">Joomla books</a> and <a href="http://needforcontent.com/category/cms-books/drupal-books/">Drupal Books</a>.</p>
<img src="http://feeds.feedburner.com/~r/needforcontent/~4/d6cTlgZFy18" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://needforcontent.com/tinywebgallery/feed/</wfw:commentRss>
		<feedburner:origLink>http://needforcontent.com/tinywebgallery/</feedburner:origLink></item>
		<item>
		<title>Symfony</title>
		<link>http://feedproxy.google.com/~r/needforcontent/~3/FA5NIsmapqg/</link>
		<comments>http://needforcontent.com/symfony/#comments</comments>
		<pubDate>Sun, 08 Nov 2009 19:47:52 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[PHP Frameworks]]></category>

		<guid isPermaLink="false">http://needforcontent.com/?p=795</guid>
		<description><![CDATA[<p>Symfony is a web application framework written in PHP which follows the model-view-controller (MVC) paradigm. Released under the MIT license, Symfony is free software. The symfony-project.com website launched on October 18, 2005.</p>
<p>Symfony should not be confused with Symphony CMS, the Open Source XML/XSLT content management system.</p>
Goal
<p>Symfony aims to speed up the creation and maintenance of web applications and to&#8230;</p><p><a href="http://needforcontent.com/symfony/">Symfony</a> is posted on <a href="http://needforcontent.com">Content Management Systems</a> Blog.
<br />
Please read our reviews on <a href="http://needforcontent.com/category/cms-books/joomla-books/">Joomla books</a> and <a href="http://needforcontent.com/category/cms-books/drupal-books/">Drupal Books</a>.</p>
]]></description>
			<content:encoded><![CDATA[<p>Symfony is a web application framework written in PHP which follows the model-view-controller (MVC) paradigm. Released under the MIT license, Symfony is free software. The symfony-project.com website launched on October 18, 2005.</p>
<p>Symfony should not be confused with Symphony CMS, the Open Source XML/XSLT content management system.</p>
<h2>Goal</h2>
<p>Symfony aims to speed up the creation and maintenance of web applications and to replace repetitive coding tasks. It requires a few prerequisites for installation: Unix, Linux, Mac OS or Microsoft Windows with a web server and PHP 5 installed. It is currently compatible with the following Object-relational mappings: Propel and Doctrine.</p>
<p>Symfony has low performance overheads when dealing with an environment that supports a PHP accelerator. It should be noted however, that in typical shared hosting environments where a PHP accelerator is not available, Symfony suffers from a relatively high performance overhead.</p>
<p>Symfony is aimed at building robust applications in an enterprise context, and aims to give developers full control over the configuration: from the directory structure to the foreign libraries, almost everything can be customized. To match enterprise development guidelines, Symfony is bundled with additional tools to help developers test, debug and document projects.</p>
<h2>Technical</h2>
<p>Symfony makes use of many common and well understood enterprise design patterns, such as Model-View-Controller. Symfony was heavily inspired by other Web Application Frameworks such as Ruby On Rails.</p>
<p>Symfony makes heavy use of existing PHP open source projects as part of the framework, such as:</p>
<p>Propel or Doctrine, as Object Relational Mapping layerCreole, Database abstraction layer (v 1.0 and 1.1, with Propel)PDO Database abstraction layer (1.1, with Doctrine and Propel 1.3)PRADO, an event-driven PHP web application framework, for Internationalization supportSpyc, a YAML parser (v 1.2)Pake, command-line helper (v 1.0)</p>
<p>It also includes a number of Open Source Javascript frameworks and libraries:</p>
<p>Prototype or jQuery, as javascript framework (v 1.0 and 1.1)script.aculo.us, for visual effects (v 1.0 and 1.1)Dynarch.com, for the DHTML Calendar (v 1.0 and 1.1)TinyMCE, for Rich Text Editing (v 1.0)FCKeditor, for Rich Text EditingTCPDF library for generating PDF documents</p>
<p>As of Symfony release 1.2, no Javascript framework is selected as the default, leaving inclusion and implementation of a Javascript library to the developers.</p>
<h2>Sponsors</h2>
<p>Symfony is sponsored by Sensio, a French web agency. The first name was Sensio Framework, and all classes were prefixed with sf. Later on when it was decided to launch it as open source framework, the brainstorming resulted in the name Symfony, the name which depicts the theme and class name prefixes.</p>
<h2>Real-world usage</h2>
<p>Symfony is used by the open-source Q&amp;A service Askeet and many more applications, including Delicious and the 20 million users of Yahoo! Bookmarks. As of February 2009, Dailymotion has ported part of its code to use Symfony, and is continuing the transition.</p>
<h2>Development Roadmap</h2>
<p>The upcoming new release version of Symfony will include new features such as:</p>
<ul>
<li>A new form generation framework, first introduced in version 1.2</li>
<li>A new admin generator (referred to as scaffolding in Rails) which makes use of the new form framework&#8217; and is no longer implemented as a helper.</li>
<li>Object relationship mapping declared in a separate plugin, rather than being integrated into the ORM</li>
<li>Choice of ORM (Doctrine or Propel, or a combination of the two)</li>
<li>Classes re-factored for looser coupling between objects, allowing for more user flexibility in using objects and fewer dependencies (similar in principle to the Zend Framework).</li>
<li>Routing rules and route objects more closely follow REST design principals.</li>
</ul>
<p><a rel="nofollow" href="http://en.wikipedia.org/wiki/Symfony">Source</a></p>
<p><a href="http://needforcontent.com/symfony/">Symfony</a> is posted on <a href="http://needforcontent.com">Content Management Systems</a> Blog.
<br />
Please read our reviews on <a href="http://needforcontent.com/category/cms-books/joomla-books/">Joomla books</a> and <a href="http://needforcontent.com/category/cms-books/drupal-books/">Drupal Books</a>.</p>
<img src="http://feeds.feedburner.com/~r/needforcontent/~4/FA5NIsmapqg" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://needforcontent.com/symfony/feed/</wfw:commentRss>
		<feedburner:origLink>http://needforcontent.com/symfony/</feedburner:origLink></item>
		<item>
		<title>Piwigo</title>
		<link>http://feedproxy.google.com/~r/needforcontent/~3/mehe5hV_t2o/</link>
		<comments>http://needforcontent.com/piwigo/#comments</comments>
		<pubDate>Sun, 08 Nov 2009 09:01:13 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Image Galleries]]></category>

		<category><![CDATA[image gallery script]]></category>

		<guid isPermaLink="false">http://needforcontent.com/?p=507</guid>
		<description><![CDATA[<p>Website: <a href="http://www.piwigo.org">http://www.piwigo.org</a><br />
License: GPL</p>
<p>Piwigo (formerly PhpWebGallery) is a web standards compliant photo-gallery licensed under the GPL. It is written in PHP and utilizes a MySQL database.</p>
<p>History</p>
<p>PhpWebGallery was originally written by Pierrick Le Gall as a personal project, unaware that other projects like it existed. On April 15, 2002, the first version of PhpWebGallery was released.</p>
<p>In order to allow non-programmers to use&#8230;</p><p><a href="http://needforcontent.com/piwigo/">Piwigo</a> is posted on <a href="http://needforcontent.com">Content Management Systems</a> Blog.
<br />
Please read our reviews on <a href="http://needforcontent.com/category/cms-books/joomla-books/">Joomla books</a> and <a href="http://needforcontent.com/category/cms-books/drupal-books/">Drupal Books</a>.</p>
]]></description>
			<content:encoded><![CDATA[<p>Website: <a href="http://www.piwigo.org">http://www.piwigo.org</a><br />
License: GPL</p>
<p>Piwigo (formerly PhpWebGallery) is a web standards compliant photo-gallery licensed under the GPL. It is written in PHP and utilizes a MySQL database.</p>
<p>History</p>
<p>PhpWebGallery was originally written by Pierrick Le Gall as a personal project, unaware that other projects like it existed. On April 15, 2002, the first version of PhpWebGallery was released.</p>
<p>In order to allow non-programmers to use PhpWebGallery, the software was restructured, this time utilizing templates. This allowed users to change the look of the gallery with only HTML and CSS.</p>
<p>Later versions allowed for images to be stored in any arbitrary location as well as any arbitrary category. The latter was eventually dubbed a &#8220;virtual category&#8221;).</p>
<p>Creator Pierrick Le Gall announced the pending name change from PhpWebGallery to Piwigo on his personal website on September 24, 2008. The stated reasons for the change in name were:</p>
<p>    * shorter : easier to remind<br />
    * unique : a search engine request on &#8220;Piwigo&#8221; will bring you to the Piwigo project pages<br />
    * no PHP in the name : I now find it odd to make the technology obvious in the application name<br />
    * keeps the PWG letters</p>
<p>Today, Piwigo is supported by 14 developers and a thriving community.</p>
<p>Main Features</p>
<p>Virtual categories<br />
    Each image is bound to one or more virtual categories. By associating images to multiple virtual categories, albums can be displayed in multiple, arbitrary groupings depending on the target audience.</p>
<p>Templates<br />
    The appearance of the photo album is defined from a template. There are various templates provided by the development community.</p>
<p>Navigation<br />
    Users are able to navigate using five different modes: category, date (using a calendar), recent images, and tags.</p>
<p>Access control<br />
    Access control is handled by the user manager, restricting and granting varying levels of access to images and albums.</p>
<p>Notification system<br />
    Users can be alerted of changes and updates through RSS feeds and E-mail</p>
<p>Plugins<br />
    Plugins expand capabilities of PhpWebGallery. Plugins exist that integrate Google Video, Dailymotion, YouTube, Google Maps, Google Earth, as well as implementing a Sitemap.</p>
<p>Other features are listed on the project&#8217;s homepage.</p>
<p><a rel="nofollow" href="http://en.wikipedia.org/wiki/Piwigo">Source</a></p>
<p><a href="http://needforcontent.com/piwigo/">Piwigo</a> is posted on <a href="http://needforcontent.com">Content Management Systems</a> Blog.
<br />
Please read our reviews on <a href="http://needforcontent.com/category/cms-books/joomla-books/">Joomla books</a> and <a href="http://needforcontent.com/category/cms-books/drupal-books/">Drupal Books</a>.</p>
<img src="http://feeds.feedburner.com/~r/needforcontent/~4/mehe5hV_t2o" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://needforcontent.com/piwigo/feed/</wfw:commentRss>
		<feedburner:origLink>http://needforcontent.com/piwigo/</feedburner:origLink></item>
	</channel>
</rss>
