<?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>Reinventar &#187; orange</title>
	<atom:link href="http://reinventar.com/tag/orange/feed/" rel="self" type="application/rss+xml" />
	<link>http://reinventar.com</link>
	<description></description>
	<lastBuildDate>Tue, 05 Apr 2011 13:25:10 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1</generator>
		<item>
		<title>BaseApp Orange updated with basic pages and i18n support</title>
		<link>http://reinventar.com/2009/03/12/baseapp-orange-updated-with-basic-pages-and-i18n-support/</link>
		<comments>http://reinventar.com/2009/03/12/baseapp-orange-updated-with-basic-pages-and-i18n-support/#comments</comments>
		<pubDate>Thu, 12 Mar 2009 18:40:28 +0000</pubDate>
		<dc:creator>Pedro Sousa</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[baseapp-orange]]></category>
		<category><![CDATA[orange]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[ruby]]></category>

		<guid isPermaLink="false">http://reinventar.com/?p=528</guid>
		<description><![CDATA[Just a quick post to illustrate the changes I did to BaseApp Orange and how you can help shape it&#8217;s way. BaseApp Orange is my attempt to create a base for future Rails projects which end up having similar constraints and features. This week I posted the code on github and I did some changes [...]]]></description>
			<content:encoded><![CDATA[<p>Just a quick post to illustrate the changes I did to <a href="http://github.com/psousa/baseapp-orange/tree/master">BaseApp Orange </a>and how you can help shape it&#8217;s way.</p>
<p><a href="http://github.com/psousa/baseapp-orange/tree/master">BaseApp Orange</a> is my attempt to create a base for future Rails projects which end up having similar constraints and features. This week I posted the code on github and I did some changes I thought I should comunicate.</p>
<p><strong>Added SEO fields for Pages</strong></p>
<p>I consider this one important. Basicaly, for each Page you create in the admin area, you can write the meta-keywords, meta-description and page slug for that page. When this page shows up in the frontend, that information will be part of it (unless they&#8217;re blank).</p>
<p><a href="http://reinventar.com/wp-content/uploads/2009/03/picture-4.png" class="broken_link"><img onError="javascript: wp_404_images_fix = window.wp_404_images_fix || function(){}; wp_404_images_fix(this);"  class="alignleft size-full wp-image-529" title="picture-4" src="http://reinventar.com/wp-content/uploads/2009/03/picture-4.png" alt="picture-4" width="480" height="346" /></a></p>
<p>You can also define this on a global scale for the app (in the config/config.yml file) and that way you can make your app more SEO friendly.</p>
<p><strong>Basic i18n support</strong></p>
<p>This is fairly new to me but I think I did some advances on this part. I defined two locales for the application, so there&#8217;s english and portuguese and i&#8217;ve got 2 yml files in config/locales/ with date formats, numbers, model names, attributes and much more.</p>
<p><a href="http://reinventar.com/wp-content/uploads/2009/03/picture-5.png" class="broken_link"><img onError="javascript: wp_404_images_fix = window.wp_404_images_fix || function(){}; wp_404_images_fix(this);"  class="alignleft size-full wp-image-530" title="picture-5" src="http://reinventar.com/wp-content/uploads/2009/03/picture-5.png" alt="picture-5" width="363" height="262" /></a></p>
<p>You can also use this yml file to store your own translations, like the below example:</p>
<p><a href="http://reinventar.com/wp-content/uploads/2009/03/picture-6.png" class="broken_link"><img onError="javascript: wp_404_images_fix = window.wp_404_images_fix || function(){}; wp_404_images_fix(this);"  class="alignleft size-full wp-image-531" title="picture-6" src="http://reinventar.com/wp-content/uploads/2009/03/picture-6.png" alt="picture-6" width="502" height="205" /></a></p>
<p>I also got a before_filter setup on the application.rb controller that sets the locale for each request:</p>
<pre lang="ruby">before_filter :set_locale

def set_locale
locale = params[:locale] || 'pt'
I18n.locale = locale
end</pre>
<p>And I got this working for Pages by defining my routes as this:</p>
<pre lang="ruby">map.pages '/pages/:permalink/:locale', :controller=&gt;"pages", :action=&gt;"show", :defaults =&gt; { :locale =&gt; 'pt' }</pre>
<p>This works fine even in the case you didn&#8217;t put the locale in the params.</p>
<p><a href="http://reinventar.com/wp-content/uploads/2009/03/picture-9.png" class="broken_link"><img onError="javascript: wp_404_images_fix = window.wp_404_images_fix || function(){}; wp_404_images_fix(this);"  class="alignleft size-full wp-image-532" title="picture-9" src="http://reinventar.com/wp-content/uploads/2009/03/picture-9.png" alt="picture-9" width="325" height="37" /></a></p>
<p>Now all I have to figure out is how to do the same for restful routes and translate the rest of the pages.</p>
<p>Any ideas?</p>
<div id="crp_related"><h3>Related Posts:</h3><ul><li><a href="http://reinventar.com/2009/03/09/baseapp-orange/" rel="bookmark" class="crp_title">BaseApp Orange</a></li><li><a href="http://reinventar.com/2009/09/22/baseapp-orange-v3/" rel="bookmark" class="crp_title">BaseApp Orange v3</a></li><li><a href="http://reinventar.com/2009/11/25/baseapp-orange-updated-v4/" rel="bookmark" class="crp_title">Baseapp-orange updated v4</a></li></ul></div>]]></content:encoded>
			<wfw:commentRss>http://reinventar.com/2009/03/12/baseapp-orange-updated-with-basic-pages-and-i18n-support/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>BaseApp Orange</title>
		<link>http://reinventar.com/2009/03/09/baseapp-orange/</link>
		<comments>http://reinventar.com/2009/03/09/baseapp-orange/#comments</comments>
		<pubDate>Mon, 09 Mar 2009 17:06:29 +0000</pubDate>
		<dc:creator>Pedro Sousa</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[github]]></category>
		<category><![CDATA[open-source]]></category>
		<category><![CDATA[orange]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[rubyonrails]]></category>

		<guid isPermaLink="false">http://reinventar.com/?p=516</guid>
		<description><![CDATA[BaseApp Orange é um fork da aplicação BaseApp na tentativa de o tornar mais adequado à maioria dos nossos projectos futuros. Ou seja, em vez de duplicar o mesmo trabalho, porque não criar uma base de trabalho com o essencial para futuros projectos? Para isso, procurei melhorar o BaseApp com uma área de administração para [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://github.com/psousa/baseapp-orange/tree/master">BaseApp Orange</a> é um fork da aplicação <a href="http://baseapp.org ">BaseApp</a> na tentativa de o tornar mais adequado à maioria dos nossos projectos futuros.</p>
<p><a href="http://reinventar.com/wp-content/uploads/2009/03/paginas.png" class="broken_link"><img onError="javascript: wp_404_images_fix = window.wp_404_images_fix || function(){}; wp_404_images_fix(this);"  class="size-medium wp-image-515 alignleft" title="paginas" src="http://reinventar.com/wp-content/uploads/2009/03/paginas-300x121.png" alt="paginas" width="300" height="121" /></a></p>
<p><strong>Ou seja, em vez de duplicar o mesmo trabalho, porque não criar uma base de trabalho com o essencial para futuros projectos?</strong></p>
<p>Para isso, procurei melhorar o <a href="http://baseapp.org ">BaseApp</a> com uma área de administração para Páginas (e sub-páginas até niveis infinitos), Línguas, Notícias, Utilizadores e conteúdos (ou snippets, pedaços de texto que podem querer editar no backoffice e pôr onde quiserem no frontend). A razão porque fiz isto é simples, os CMS&#8217;s actuais em Ruby on Rails como RadiantCMS não se adequavam ao que queria e maior parte dos projectos exigem desenvolvimento à medida.</p>
<p>O código está todo no <a href="http://github.com/psousa/baseapp-orange/tree/master">GitHub</a> e portanto quem quiser fazer melhoramentos, correcções, etc é pode fazer as alterações que quiser.<br />
<strong>Principais diferenças do BaseApp Original</strong></p>
<ul>
<li>Traduzido para PT (incluindo i18n locale)</li>
<li>Páginas (e sub-páginas infinitas)</li>
<li>Notícias</li>
<li>Conteúdos</li>
<li>Campos para meta tags (descrição, keywords e permalink)</li>
<li>Tema para admin com (with famfamfam icons)</li>
</ul>
<p><strong>Plugins incluídos<br />
</strong></p>
<ul>
<li>Jrails para suporte JQuery (remover se preferir Prototype)</li>
<li>Bundle-fu em vez de  asset_packager</li>
<li>FckEditor para editar páginas com html</li>
<li>WillPaginate Gem</li>
<li>Paperclip para upload de ficheiros</li>
<li>Permalink-fu para gerar links permanentes</li>
<li>Acts as taggable</li>
</ul>
<p><strong>A fazer</strong></p>
<ul>
<li>Arrastar e largar com ordenação para a secção das páginas no admin</li>
<li>Suporte total i18n</li>
<li>Implementar páginas, snippets, notícias no frontend</li>
<li>Incluir Testes com RSPEC para os models</li>
</ul>
<p>Mais screenshot <a href="http://www.flickr.com/photos/psousa/">na galeria do Flickr</a> ou então faz download do projecto na respectiva<a href="http://github.com/psousa/baseapp-orange/tree/master"> página do GitHub</a>.</p>

<a href='http://reinventar.com/2009/03/09/baseapp-orange/paginas/' title='paginas'><img width="150" height="150" src="http://reinventar.com/wp-content/uploads/2009/03/paginas-150x150.png" class="attachment-thumbnail" alt="paginas" title="paginas" /></a>
<a href='http://reinventar.com/2009/03/09/baseapp-orange/admin/' title='admin'><img width="150" height="150" src="http://reinventar.com/wp-content/uploads/2009/03/admin-150x150.png" class="attachment-thumbnail" alt="admin" title="admin" /></a>
<a href='http://reinventar.com/2009/03/09/baseapp-orange/login/' title='login'><img width="150" height="150" src="http://reinventar.com/wp-content/uploads/2009/03/login-150x150.png" class="attachment-thumbnail" alt="login" title="login" /></a>
<a href='http://reinventar.com/2009/03/09/baseapp-orange/noticias/' title='noticias'><img width="150" height="150" src="http://reinventar.com/wp-content/uploads/2009/03/noticias-150x150.png" class="attachment-thumbnail" alt="noticias" title="noticias" /></a>

<p><strong>English<br />
</strong>Last week I started working on a fork from <a href="http://baseapp.org ">BaseApp</a> in attempt to make it a more suitable backoffice and structure for my own projects. The main goal was to build a future base for my projects with support for Pages, Languages, News and User Management.</p>
<p>And so <a href="http://github.com/psousa/baseapp-orange/tree/master">BaseApp Orange </a>was evolved, the inspiration for the admin looks came from Apple and WordPress. <img onError="javascript: wp_404_images_fix = window.wp_404_images_fix || function(){}; wp_404_images_fix(this);"  src='http://reinventar.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /><br />
<strong>Main diferences from BaseApp:</strong></p>
<ul>
<li>Pages (and infinite sub-pages) and expand/colapse rows in the admin</li>
<li>News</li>
<li>Multi-Language (not yet fully implemented)</li>
<li>Snippets</li>
<li>Fields for meta description, keywords, and permalink</li>
<li>Fully translated to portuguese (also included i18n locale)</li>
<li>Pretty admin theme (with famfamfam icons)</li>
</ul>
<p><strong>Other plugins included<br />
</strong></p>
<ul>
<li>Jrails for (jQuery support)</li>
<li>Bundle-fu instead of asset_packager</li>
<li>FckEditor to edit pages with image file upload support</li>
<li>WillPaginate Gem</li>
<li>Paperclip for uploading files</li>
<li>Permalink-fu for generating erm, permalinks?</li>
<li>Acts as taggable</li>
</ul>
<p><strong> TODO<br />
</strong></p>
<ul>
<li>Drag and drop sorting for pages in the admin area</li>
<li>Full i18n support with multi-languages</li>
<li>Frontend implementation of pages, snippets and languages</li>
<li>Add Rspec TESTS for all models and admin controllerse</li>
</ul>
<p>Anyway, the whole project can be found at <a href="http://github.com/psousa/baseapp-orange/tree/master">GitHub</a> and you can see some more screenshots in my <a href="http://www.flickr.com/photos/psousa/">Flickr Gallery.</a></p>
<p>Feel free to change, update, alter, suggest new features, fork as you wish. Enjoy!</p>
<div id="crp_related"><h3>Related Posts:</h3><ul><li><a href="http://reinventar.com/2009/03/12/baseapp-orange-updated-with-basic-pages-and-i18n-support/" rel="bookmark" class="crp_title">BaseApp Orange updated with basic pages and i18n support</a></li><li><a href="http://reinventar.com/2009/11/25/baseapp-orange-updated-v4/" rel="bookmark" class="crp_title">Baseapp-orange updated v4</a></li><li><a href="http://reinventar.com/2009/09/22/baseapp-orange-v3/" rel="bookmark" class="crp_title">BaseApp Orange v3</a></li></ul></div>]]></content:encoded>
			<wfw:commentRss>http://reinventar.com/2009/03/09/baseapp-orange/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>

