<?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" version="2.0">

<channel>
	<title>Oktay Acikalin's Blog</title>
	
	<link>http://ok.ryotic.de/blog</link>
	<description>coding, aurora, fun and life</description>
	<pubDate>Sun, 19 Oct 2008 18:24:01 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.2</generator>
	<language>en</language>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/OktayAcikalin" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="oktayacikalin" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>flower bubble</title>
		<link>http://ok.ryotic.de/blog/2008/10/flower-bubble/</link>
		<comments>http://ok.ryotic.de/blog/2008/10/flower-bubble/#comments</comments>
		<pubDate>Tue, 07 Oct 2008 16:55:34 +0000</pubDate>
		<dc:creator>theblacklion</dc:creator>
		
		<category><![CDATA[aurora]]></category>

		<category><![CDATA[jquery]]></category>

		<category><![CDATA[plugins]]></category>

		<category><![CDATA[block]]></category>

		<category><![CDATA[plugin]]></category>

		<category><![CDATA[ui]]></category>

		<guid isPermaLink="false">http://ok.ryotic.de/blog/?p=77</guid>
		<description><![CDATA[i&#8217;ve just uploaded a little jquery plugin called flower bubble1, which blocks the user interface or some specified html object, draws a nice overlay, a bubble and a flower.
it&#8217;s completely customizable by giving an option object to it. a little how-to is included in the js-file.
you can also get it from aurora&#8217;s plugin repository2.
a little [...]]]></description>
			<content:encoded><![CDATA[<p>i&#8217;ve just uploaded a little jquery plugin called flower bubble<sup>1</sup>, which blocks the user interface or some specified html object, draws a nice overlay, a bubble and a flower.<span id="more-77"></span></p>
<p>it&#8217;s completely customizable by giving an option object to it. a little how-to is included in the js-file.</p>
<p>you can also get it from aurora&#8217;s plugin repository<sup>2</sup>.</p>
<p>a little demo can be found here: <a href="http://feedntrack.de/l/1/cw1a2" target="_blank">http://ok.ryotic.de/flobu_demo/</a></p>
<p>&#8216;hope you&#8217;ll find it useful <img src='http://ok.ryotic.de/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>&#8211;</p>
<ol class="footnotes">
<li id="footnote_0_77" class="footnote"><a href="http://feedntrack.de/l/1/85t9f" target="_blank">jquery flower bubble plugin</a></li>
<li id="footnote_1_77" class="footnote"><a href="http://feedntrack.de/l/1/8eo82" target="_blank">aurora framework</a></li>
</ol>

]]></content:encoded>
			<wfw:commentRss>http://ok.ryotic.de/blog/2008/10/flower-bubble/feed/</wfw:commentRss>
		</item>
		<item>
		<title>writing a simple file converter</title>
		<link>http://ok.ryotic.de/blog/2008/09/writing-a-simple-file-converter/</link>
		<comments>http://ok.ryotic.de/blog/2008/09/writing-a-simple-file-converter/#comments</comments>
		<pubDate>Tue, 09 Sep 2008 11:08:17 +0000</pubDate>
		<dc:creator>theblacklion</dc:creator>
		
		<category><![CDATA[aurora]]></category>

		<category><![CDATA[framework]]></category>

		<category><![CDATA[converter]]></category>

		<guid isPermaLink="false">http://ok.ryotic.de/blog/?p=36</guid>
		<description><![CDATA[today i would like to show you a little example on how to combine some useful techniques for cleaner coding with aurora1. our goal is to create 2 extensions which do similar things on different ends, combined with some command line interface. in the first place, i would like to demonstrate some old and new [...]]]></description>
			<content:encoded><![CDATA[<p>today i would like to show you a little example on how to combine some useful techniques for cleaner coding with aurora<sup>1</sup>. our goal is to create 2 extensions which do similar things on different ends, combined with some command line interface.<span id="more-36"></span> in the first place, i would like to demonstrate some old and new features. i assume, that you are experienced enough to understand what&#8217;s going on by reading the code - complicated parts will be explained.</p>
<p>things we use for this are:</p>
<ul>
<li>ext.mod call style</li>
<li>config/boot/extmod_drop_duplicates</li>
<li>signals</li>
<li>some helpers</li>
</ul>
<p>note: i&#8217;m normally using tabs instead of spaces but the syntax highlight plugin replaces them with spaces. it also messes up single quotes - you should replace them with normal single quotes instead.</p>
<p>so let&#8217;s start by making out where to drop our new project. my installation uses ~/Sites as my docroot. i have a test folder in ~/Sites/test which is my starting point.</p>
<p>let&#8217;s create a project. open up your console, go into your test-folder ( or whatever ) and do:</p>
<pre>$> ama -cp fileconv -ca -cli</pre>
<p>this will create a project, a simple application and a cli file.</p>
<pre>$> cd fileconv/module/fileconv.appl/</pre>
<p>now we create two extensions for reading and writing files:</p>
<pre>$> ama -ce xml -ce yaml</pre>
<p>now open up the xml extension with your favorite text editor and flesh it out with some methods for reading and writing:</p>
<div class="dean_ch" style="white-space: nowrap;"><span class="kw2">public</span> <span class="kw2">function</span> read <span class="br0">&#40;</span> <span class="re0">$filename</span> <span class="br0">&#41;</span><br />
<span class="br0">&#123;</span><br />
&nbsp; &nbsp; <span class="re0">$this</span> -&gt; <span class="me1">data</span> = xml::<a href="http://www.php.net/file_get_contents"><span class="kw3">file_get_contents</span></a> <span class="br0">&#40;</span> <span class="re0">$filename</span> <span class="br0">&#41;</span> ;<br />
<span class="br0">&#125;</span></p>
<p><span class="kw2">public</span> <span class="kw2">function</span> write <span class="br0">&#40;</span> <span class="re0">$filename</span> <span class="br0">&#41;</span><br />
<span class="br0">&#123;</span><br />
&nbsp; &nbsp; xml::<span class="me2">file_put_contents</span> <span class="br0">&#40;</span> <span class="re0">$filename</span>, <span class="re0">$this</span> -&gt; <span class="me1">data</span> <span class="br0">&#41;</span> ;<br />
<span class="br0">&#125;</span></div>
<p>do the same with the yaml extension:</p>
<div class="dean_ch" style="white-space: nowrap;"><span class="kw2">public</span> <span class="kw2">function</span> read <span class="br0">&#40;</span> <span class="re0">$filename</span> <span class="br0">&#41;</span><br />
<span class="br0">&#123;</span><br />
&nbsp; &nbsp; <span class="re0">$this</span> -&gt; <span class="me1">data</span> = yaml::<a href="http://www.php.net/file_get_contents"><span class="kw3">file_get_contents</span></a> <span class="br0">&#40;</span> <span class="re0">$filename</span> <span class="br0">&#41;</span> ;<br />
<span class="br0">&#125;</span></p>
<p><span class="kw2">public</span> <span class="kw2">function</span> write <span class="br0">&#40;</span> <span class="re0">$filename</span> <span class="br0">&#41;</span><br />
<span class="br0">&#123;</span><br />
&nbsp; &nbsp; yaml::<span class="me2">file_put_contents</span> <span class="br0">&#40;</span> <span class="re0">$filename</span>, <span class="re0">$this</span> -&gt; <span class="me1">data</span> <span class="br0">&#41;</span> ;<br />
<span class="br0">&#125;</span></div>
<p>setup the $data var in your appl file right into the class:</p>
<div class="dean_ch" style="white-space: nowrap;"><span class="kw2">public</span> <span class="re0">$data</span> = <a href="http://www.php.net/array"><span class="kw3">array</span></a> <span class="br0">&#40;</span><span class="br0">&#41;</span> ;</div>
<p>replace all cli routes ( cli file ) with these ( no tabs - just 2 leading spaces! ):</p>
<div class="dean_ch" style="white-space: nowrap;">- <span class="br0">&#123;</span> full: <span class="st0">&#8216;read-xml&#8217;</span>, args: <span class="br0">&#91;</span> filename <span class="br0">&#93;</span>, method: <span class="st0">&#8216;xml.read&#8217;</span> <span class="br0">&#125;</span><br />
- <span class="br0">&#123;</span> full: <span class="st0">&#8216;write-xml&#8217;</span>, args: <span class="br0">&#91;</span> filename <span class="br0">&#93;</span>, method: <span class="st0">&#8216;xml.write&#8217;</span> <span class="br0">&#125;</span></p>
<p>- <span class="br0">&#123;</span> full: <span class="st0">&#8216;read-yaml&#8217;</span>, args: <span class="br0">&#91;</span> filename <span class="br0">&#93;</span>, method: <span class="st0">&#8216;yaml.read&#8217;</span> <span class="br0">&#125;</span><br />
- <span class="br0">&#123;</span> full: <span class="st0">&#8216;write-yaml&#8217;</span>, args: <span class="br0">&#91;</span> filename <span class="br0">&#93;</span>, method: <span class="st0">&#8216;yaml.write&#8217;</span> <span class="br0">&#125;</span></div>
<p>and finally go to ../../ ( your project&#8217;s root folder ), edit config/boot.yml, set extmod_drop_duplicates to yes and try this:</p>
<pre>$> ./run

fileconv v0.1 ( development )

USAGE: ./run option argument(s)

OPTIONS:
  --clear-cache
  --shell
  --create-manpages
  --web-access-deactivate message
  --web-access-activate
  --htaccess-write
  --read-xml filename
  --write-xml filename
  --read-yaml filename
  --write-yaml filename</pre>
<p>now guess what? your file converter is ready for work :). try these and check the outputted files:</p>
<pre>
$> ./run --read-yaml config/boot.yml --write-xml output.xml
$> ./run --read-xml output.xml --write-yaml output.yml
$> ./run --read-xml output.xml --write-xml output2.xml
$> diff output.xml output2.xml
$> ./run --read-yaml output.yml --write-yaml output2.yml
$> diff output.yml output2.yml
$> ./run --read-yaml output.yml --write-xml output2.xml
$> diff output.xml output2.xml
</pre>
<p>you should not encounter any errors. if you do please let me know.</p>
<p>now what have we seen?</p>
<ul>
<li>we used ama to create multiple things in one run</li>
<li>we created extensions for our application</li>
<li>saw what the xml and yaml helper can simplify</li>
<li>how cli files can easily extend your command line</li>
</ul>
<p>&#8220;signals?&#8221; you might ask.. yeah.. how do we utilize signals in this simple app? well, what does this command line util not do? feedback - right - we don&#8217;t see any feedback!<br />
so what can we do? we could insert some error handling and &#8220;doing this&#8221;, &#8220;doing that&#8221; messages. signals are not good at catching errors - that chapter is not written, yet. but signals can interfere application and library calls. so we could output some &#8220;doing this&#8221; and &#8220;doing that&#8221; messages without changing the code in the extensions. you might also do some user authentication within a web app, but we keep it simple.</p>
<pre>$> cd module/fileconv.appl/

$> ama -cs</pre>
<p>edit fileconv.sgn and replace present signals with this:</p>
<div class="dean_ch" style="white-space: nowrap;">- <span class="br0">&#123;</span> signal: <span class="st0">&#8216;call_ext_method&#8217;</span>, sender: <span class="st0">&#8216;fileconv_application&#8217;</span>, recipient: <span class="br0">&#91;</span> this, <a href="http://www.php.net/log"><span class="kw3">log</span></a> <span class="br0">&#93;</span> <span class="br0">&#125;</span></div>
<p>add the following to the fileconv.appl:</p>
<div class="dean_ch" style="white-space: nowrap;"><span class="kw2">public</span> <span class="kw2">function</span> <a href="http://www.php.net/log"><span class="kw3">log</span></a> <span class="br0">&#40;</span> <span class="re0">$data</span>, <span class="re0">$signal</span>, <span class="re0">$sender</span> <span class="br0">&#41;</span><br />
<span class="br0">&#123;</span><br />
&nbsp; &nbsp; <a href="http://www.php.net/extract"><span class="kw3">extract</span></a> <span class="br0">&#40;</span> <span class="re0">$data</span> <span class="br0">&#41;</span> ;<br />
&nbsp; &nbsp; aurora::<span class="me2">info_msg</span> <span class="br0">&#40;</span> <span class="st0">&#8216; %s -&gt; %s %ss %s&#8217;</span>, <span class="re0">$name</span>, <span class="re0">$extension</span>, <span class="re0">$method</span>, <span class="re0">$args</span> <span class="br0">&#91;</span> <span class="st0">&#8216;filename&#8217;</span> <span class="br0">&#93;</span> <span class="br0">&#41;</span> ;<br />
<span class="br0">&#125;</span></div>
<pre>$> cd ../..

$> ./run --read-yaml output.yml --write-xml output2.xml
MSG:  fileconv -> yaml reads output.yml
MSG:  fileconv -> xml writes output2.xml</pre>
<p>that&#8217;s it.</p>
<p>have fun <img src='http://ok.ryotic.de/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>&#8211;</p>
<ol class="footnotes">
<li id="footnote_0_36" class="footnote">you&#8217;ll need to have <a href="http://aurora.ryotic.de" title="aurora framework">aurora</a> 0.9.6 properly installed to walk through this tutorial</li>
</ol>

]]></content:encoded>
			<wfw:commentRss>http://ok.ryotic.de/blog/2008/09/writing-a-simple-file-converter/feed/</wfw:commentRss>
		</item>
		<item>
		<title>aurora 0.9.6 released</title>
		<link>http://ok.ryotic.de/blog/2008/09/aurora-096-released/</link>
		<comments>http://ok.ryotic.de/blog/2008/09/aurora-096-released/#comments</comments>
		<pubDate>Fri, 05 Sep 2008 21:01:00 +0000</pubDate>
		<dc:creator>theblacklion</dc:creator>
		
		<category><![CDATA[aurora]]></category>

		<category><![CDATA[framework]]></category>

		<category><![CDATA[release]]></category>

		<guid isPermaLink="false">http://ok.ryotic.de/blog/2008/09/aurora-096-released/</guid>
		<description><![CDATA[today we celebrate another neat release of aurora1 :). this time the motto was all around bug-fixing, stabilizing and grinding the corners. apart from this, some significant things have changed under the hood.
.htaccess won&#8217;t be written automatically anymore
use ./run &#8211;htaccess-write to do this manually.
auth, db, model and validation have been extracted into a plugin
this was [...]]]></description>
			<content:encoded><![CDATA[<p>today we celebrate another neat release of aurora<sup>1</sup> :). this time the motto was all around bug-fixing, stabilizing and grinding the corners. apart from this, some significant things have changed under the hood.<span id="more-9"></span></p>
<p><span style="font-weight: bold;">.htaccess won&#8217;t be written automatically anymore</span><br />
use ./run &#8211;htaccess-write to do this manually.</p>
<p><span style="font-weight: bold;">auth, db, model and validation have been extracted into a plugin</span><br />
this was a necessary first step to make way for the upcoming shiny new db-api along auth and validation modules. i&#8217;ll write something about them as soon as possible. use &#8220;ama -pur -pi db1_with_auth&#8221; within your project to get the old stuff back.</p>
<p><span style="font-weight: bold;">optional extension.method call style</span><br />
in order to easily know which extension holds which method when looking at a cli or url file, extmod now understands an optional extension.method style ( instead of naming the method only ). application::run (), the cli- and url-wrapper are aware of this and work hand in hand with extmod. to close the last hole, extmod provides you a __call ( $func, $args ) method which you can use to call methods with the $ext_name.$method style, too. appls and libs extend from extmod so this functionality is always right at your hand.</p>
<p><span style="font-weight: bold;">external calls with extmod</span><br />
this means that calling $appl -&gt; _call_external ( $callable, $args ) will initialize the appl as usual and then call the given callable ( same as in php itself ) with args. you may use this to mimic template rendering from a specific appl while actually being in a different lib or something like that. this also ensures proper direct template rendering from an url file without the need for a one-liner-method.</p>
<p><span style="font-weight: bold;">support colliding method names across extensions</span><br />
enabling config/boot/extmod_drop_duplicates makes it possible to have the same method names accross extensions within the same appl or lib. this is especially neat when writing rest-like interfaces. the backdraw is that methods that collide won&#8217;t be callable thru the appl or lib as usual. you have to use the $ext_name.$method style in your url or cli files.</p>
<p><span style="font-weight: bold;">semi caching while in development environment</span><br />
long time i thought about enabling some minimal caching while in development. some day i had an idea how to do this so that aurora and your project will startup much faster while always keeping track of changes in your files. this leaded me to semi-caching which does excactly that. while in production environment aurora won&#8217;t check the config files anymore after creating the cache.</p>
<p><span style="font-weight: bold;">calling methods from appl or lib emit signals</span><br />
this can be handy to interfere with calls to appls, libs and their extension.methods to check for authentication or if a user may see a certain website. a kind of aspect oriented approach.<br />
i&#8217;ve been using this to directly render templates from an url file ( mini-cms ) while always calling the auth lib and checking if the user may see the page or not. the latter case would simply redirect to the main page.<br />
in another project i&#8217;m using signals to catch calls from an url file to certain extensions and present a login page or not. here complete extensions are blocked from the user if necessary.</p>
<p><span style="font-weight: bold;">adaptive template rendering</span><br />
this sounds much more complicated than it is. the problem is that one method may not be equally good for rendering all template blocks. after some testing i found out that there can be mainly two methods in use, choosing one of them according to the size of the block to render. in the end this approch found use in many small places improving the overall rendering speed a bit.</p>
<p><span style="font-weight: bold;">user-definable open basedirs</span><br />
copying the config/web.yml file into your project and taking a look into it will reveal an array called public_folders. this can be used to let nearly every folder be accessible from the web. &#8211;htaccess-write will write special rules for them. you may use this approach to share images, css, javascript or something else accross all your appls and libs in your project. i use it to provide a download folder.</p>
<p><span style="font-weight: bold;">pitfall: template&#8217;s $_ var</span><br />
until recently i really thought $_ was broken. but then i logically investigated the situation just to find out that it&#8217;s perfectly fine. the thing is: you have to use at least $_/ and never forget the trailing slash. this way even if $_ is empty, a slash is available resulting in a valid base url.</p>
<p><span style="font-weight: bold;">notes and changelog</span><br />
<a href="http://feedntrack.de/l/1/4xt80">http://feedntrack.de/l/1/4xt80</a></p>
<p><span style="font-weight: bold;">download page</span><br />
<a href="http://feedntrack.de/l/1/1587f">http://feedntrack.de/l/1/1587f</a></p>
<p>hopefully this has provided you a little overview of what is new and what has been improved so far.</p>
<p>now get coding :).</p>
<p>&#8211;</p>
<ol class="footnotes">
<li id="footnote_0_9" class="footnote"><a href="http://aurora.ryotic.de" target="_blank">aurora framework</a></li>
</ol>

]]></content:encoded>
			<wfw:commentRss>http://ok.ryotic.de/blog/2008/09/aurora-096-released/feed/</wfw:commentRss>
		</item>
		<item>
		<title>dateien mit anderen appls und libs teilen</title>
		<link>http://ok.ryotic.de/blog/2008/06/dateien-mit-anderen-appls-und-libs-teilen/</link>
		<comments>http://ok.ryotic.de/blog/2008/06/dateien-mit-anderen-appls-und-libs-teilen/#comments</comments>
		<pubDate>Sat, 28 Jun 2008 15:38:00 +0000</pubDate>
		<dc:creator>theblacklion</dc:creator>
		
		<category><![CDATA[aurora]]></category>

		<category><![CDATA[template]]></category>

		<category><![CDATA[framework]]></category>

		<category><![CDATA[open_basedir]]></category>

		<category><![CDATA[public folders]]></category>

		<guid isPermaLink="false">http://ok.ryotic.de/blog/2008/06/dateien-mit-anderen-appls-und-libs-teilen/</guid>
		<description><![CDATA[das konzept der kompletten modularisierung in verbindung mit den layern in aurora ist in sofern ganz nett, als dass man einfach und unkompliziert quasi mashups erzeugen und wieder auseinanderreissen kann. der ursprüngliche gedanke war ja, dass man ein basis-produkt hat, welches durch einen layer ( kundenanpassungen ) erweitert oder verändert wird. inzwischen wird diese technik [...]]]></description>
			<content:encoded><![CDATA[<p>das konzept der kompletten modularisierung in verbindung mit den layern in aurora ist in sofern ganz nett, als dass man einfach und unkompliziert quasi mashups erzeugen und wieder auseinanderreissen kann. der ursprüngliche gedanke war ja, dass man ein basis-produkt hat, welches durch einen layer ( kundenanpassungen ) erweitert oder verändert wird. inzwischen wird diese technik verwendet um alles mögliche ( aurora selbst, plugins etc. ) einzubinden. was aber, wenn man z.b. css-, js- oder andere dateien teilen will? also nicht in jeder appl die selben css-dateien reinkopieren oder verlinken möchte?<span id="more-8"></span></p>
<p>abhilfe schaffen hier die kürzlich eingeführten &#8220;public folders&#8221;. im prinzip ist das nichts anderes, als was die &#8220;open basedir&#8221;s in den url-dateien bisher auch taten - einen bestimmten ordner via .htaccess freigeben.</p>
<p>$&gt; ama -cp joe -cwa<br />
$&gt; cd joe<br />
$&gt; mkdir -p public/css public/js<br />
$&gt; cp $AURORA_BASEDIR/config/web.yml config/<br />
$&gt; vi config/web.yml</p>
<p>im abschnitt &#8220;public_folders&#8221; dann die einträge für css und javascript aktivieren, &#8220;css&#8221; in &#8220;public/css&#8221; und &#8220;javascript&#8221; in &#8220;public/js&#8221; umtaufen. man kann hier beliebig viele pfade angeben. nun die datei abspeichern und vi beenden.</p>
<p>als nächstes erzeugen wir zwei dateien und füllen sie mit irgendwelchem inhalt:</p>
<p>$&gt; vi public/css/main.css<br />
body { background-color: gray ; }</p>
<p>$&gt; vi public/js/main.js<br />
alert ( &#8220;it works!&#8221; ) ;</p>
<p>damit die beiden dateien auch wirklich geladen werden, fügen wir zu dem inhalt im template-block &#8220;joe&#8221; ( vi module/joe.appl/joe.tpl ) folgendes hinzu:<br />
@html:include:public/css/main.css<br />
@html:include:public/js/main.js</p>
<p>zum beweis, dass es schon funktioniert, rufen wir joe nun im browser auf. daraufhin sollte die .htaccess-datei generiert und die &#8220;page not found&#8221;-seite angezeigt werden. klicken wir nun auf den link &#8220;» joe » main&#8221;, gelangen wir auf eine seite mit einem grauen hintergrund, worauf steht &#8220;hello world! :)&#8221; und ein popup-fenster uns die freudige nachricht &#8220;it works!&#8221; übermittelt.</p>
<p>da ich auch gerne alle skeptiker überzeugen würde, klicken wir nun auf &#8220;zurück&#8221; in der browser-navigation und widmen uns der zweiten appl.</p>
<p>$&gt; cd module<br />
$&gt; ama -cwa garfield</p>
<p>mittels vi garfield.appl/garfield.tpl das wort &#8220;world&#8221; durch &#8220;garfield&#8221; ersetzen, die zwei include-zeilen von oben auch hier hinzufügen und im browser ein reload ausführen. nun sollte man den link zu garfield sehen und anklicken können. sofern alles funktioniert hat, bekommt man ein schwarzes &#8220;hello garfield! :)&#8221; auf grauem hintergrund mit der bekannten alert-box zu sehen.</p>
<p>das wars schon :).</p>
<p>ps die .htaccess wird nur erzeugt oder aktualisiert, wenn man die template-dateien ( rules ) im web.lib ordner ändert, die .htaccess leer oder nicht vorhanden ist. da das nicht unbedingt immer bequem ist, gibt es einen hilfreichen befehl, den man am besten direkt im projektrumpf ausführen sollte. also:</p>
<p>$&gt; cd ..<br />
$&gt; ./run &#8211;htaccess-write</p>

]]></content:encoded>
			<wfw:commentRss>http://ok.ryotic.de/blog/2008/06/dateien-mit-anderen-appls-und-libs-teilen/feed/</wfw:commentRss>
		</item>
		<item>
		<title>meine flock plugins</title>
		<link>http://ok.ryotic.de/blog/2008/06/meine-flock-plugins/</link>
		<comments>http://ok.ryotic.de/blog/2008/06/meine-flock-plugins/#comments</comments>
		<pubDate>Tue, 24 Jun 2008 21:56:00 +0000</pubDate>
		<dc:creator>theblacklion</dc:creator>
		
		<category><![CDATA[firefox]]></category>

		<category><![CDATA[flock]]></category>

		<category><![CDATA[plugins]]></category>

		<guid isPermaLink="false">http://ok.ryotic.de/blog/2008/06/meine-flock-plugins/</guid>
		<description><![CDATA[da ich ab und zu gefragt werde, welche plugins ich denn so nutze, hier meine aktuelle liste aus flock 2 unter osx:

Adblock Plus
Deutsches Wörterbuch
Download Statusbar
Duplicate Tab
FaviconizeTab
Fetch Text URL
Firebug
Firecookie
FireGestures
FirePHP
geoFlock
Link Diagnosis
Quartz PDF Plugin ( http://code.google.com/p/firefox-mac-pdf/ )
Screen grab!
Selenium IDE
ShowIP
Source Viewer Tab
SQLite Manager
Undo Closed Tabs Button
Web Developer
Xdebug Helper
YSlow
Zotero

da flock ja bekanntlich auf firefox basiert, kann der gro�?teil natürlich auch [...]]]></description>
			<content:encoded><![CDATA[<p>da ich ab und zu gefragt werde, welche plugins ich denn so nutze, hier meine aktuelle liste aus flock 2 unter osx:<span id="more-7"></span></p>
<ul>
<li>Adblock Plus</li>
<li>Deutsches Wörterbuch</li>
<li>Download Statusbar</li>
<li>Duplicate Tab</li>
<li>FaviconizeTab</li>
<li>Fetch Text URL</li>
<li>Firebug</li>
<li>Firecookie</li>
<li>FireGestures</li>
<li>FirePHP</li>
<li>geoFlock</li>
<li>Link Diagnosis</li>
<li>Quartz PDF Plugin ( http://code.google.com/p/firefox-mac-pdf/ )</li>
<li>Screen grab!</li>
<li>Selenium IDE</li>
<li>ShowIP</li>
<li>Source Viewer Tab</li>
<li>SQLite Manager</li>
<li>Undo Closed Tabs Button</li>
<li>Web Developer</li>
<li>Xdebug Helper</li>
<li>YSlow</li>
<li>Zotero</li>
</ul>
<p>da flock ja bekanntlich auf firefox basiert, kann der gro�?teil natürlich auch unter firefox verwendet werden.</p>

]]></content:encoded>
			<wfw:commentRss>http://ok.ryotic.de/blog/2008/06/meine-flock-plugins/feed/</wfw:commentRss>
		</item>
		<item>
		<title>direktes rendern von templates</title>
		<link>http://ok.ryotic.de/blog/2008/06/direktes-rendern-von-templates/</link>
		<comments>http://ok.ryotic.de/blog/2008/06/direktes-rendern-von-templates/#comments</comments>
		<pubDate>Sun, 22 Jun 2008 09:41:00 +0000</pubDate>
		<dc:creator>theblacklion</dc:creator>
		
		<category><![CDATA[aurora]]></category>

		<category><![CDATA[template]]></category>

		<category><![CDATA[framework]]></category>

		<guid isPermaLink="false">http://ok.ryotic.de/blog/2008/06/direktes-rendern-von-templates/</guid>
		<description><![CDATA[gerade gestern erst zeigte mir cubique, dass man mit django auch templates direkt rendern kann und das in aurora ja ganz nützlich sein könnte. recht hat er ja :).
da viel mir ein, dass ich das vor nem halben jahr oder so schon mal recht erfolgreich probiert hab. so gehts:
$&#62; ama -cp direct_rendering_test
$&#62; cd direct_rendering_test/module
$&#62; ama [...]]]></description>
			<content:encoded><![CDATA[<p>gerade gestern erst zeigte mir cubique, dass man mit django auch templates direkt rendern kann und das in aurora ja ganz nützlich sein könnte. recht hat er ja :).<span id="more-6"></span><br />
da viel mir ein, dass ich das vor nem halben jahr oder so schon mal recht erfolgreich probiert hab. so gehts:</p>
<pre>$&gt; ama -cp direct_rendering_test
$&gt; cd direct_rendering_test/module
$&gt; ama -cwa main</pre>
<p>dann in module/main.appl/main.url alle beispiel-routen entfernen und folgende unter routes einfügen:</p>
<pre>  # default to main-page
  - {
    url: "^"
    method: "template::render_template_to_screen"
    args:
    template: "main"
    start_block: "main"
    additional_vars:
    what: "world"
  }</pre>
<p>zum spa�? im template ( module/main.appl/main.tpl ) das world durch ein $what ersetzen. die main () in main.appl kann natürlich entsorgt werden.</p>
<p>nun das ganze im browser öffnen und freuen <img src='http://ok.ryotic.de/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>ps hab leider auch einen bug gefunden. in $$ steht der falsche caller &#8220;web&#8221; drinn. eigentlich sollte ja &#8220;main&#8221; ausgegeben werden, da die main.url auf die main.appl verweist. der bugfix ist für die nächste version 0.9.6 eingetragen.</p>

]]></content:encoded>
			<wfw:commentRss>http://ok.ryotic.de/blog/2008/06/direktes-rendern-von-templates/feed/</wfw:commentRss>
		</item>
		<item>
		<title>emails massenweise entsorgen und das happening danach</title>
		<link>http://ok.ryotic.de/blog/2008/06/emails-massenweise-entsorgen-und-das-happening-danach/</link>
		<comments>http://ok.ryotic.de/blog/2008/06/emails-massenweise-entsorgen-und-das-happening-danach/#comments</comments>
		<pubDate>Sat, 07 Jun 2008 17:45:00 +0000</pubDate>
		<dc:creator>theblacklion</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<category><![CDATA[email]]></category>

		<category><![CDATA[mail.app]]></category>

		<guid isPermaLink="false">http://ok.ryotic.de/blog/2008/06/emails-massenweise-entsorgen-und-das-happening-danach/</guid>
		<description><![CDATA[time machine ist schon geil&#8230; naja fast:
wollte das prefix von meinem imap-postfach von meinem abgerauchten server hier so ändern, dass ich das postfach als treenode im baum links in mail hab. gemacht - mails weg. WTF?!!
nunja, er hat sie gelöscht, den pfad geändert und wollte synchronisieren - bong.
ich also gedacht &#8220;haha - bin ja ausgerüstet!&#8221;, [...]]]></description>
			<content:encoded><![CDATA[<p>time machine ist schon geil&#8230; naja fast:</p>
<p>wollte das prefix von meinem imap-postfach von meinem abgerauchten server hier so ändern, dass ich das postfach als treenode im baum links in mail hab. gemacht - mails weg. WTF?!!<span id="more-5"></span></p>
<p>nunja, er hat sie gelöscht, den pfad geändert und wollte synchronisieren - bong.</p>
<p>ich also gedacht &#8220;haha - bin ja ausgerüstet!&#8221;, postfach gewählt und time machine gestartet. nach einigem rödeln war das interface ( echt niedlich <img src='http://ok.ryotic.de/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> ) da und auch das postfach mit meinen mails. ich also auf &#8220;wiederherstellen&#8221; geklickt und gewartet. fertig.</p>
<p>nun liegen da in einem lokalen baum ein paar ordner - nicht alle - und irgendwie hab ich mir das anders vorgestellt. warum nicht im imap-postfach sondern als extra baum im lokalen system?? hmpf.</p>
<p>was geht noch..? hmm&#8230; man könnte ja das restore auf dateisystemebene versuchen. ich also in ~/Library/Mail rein und ordner durchstöbert. IMAP-${username}@${hostname} gefunden, reingegangen und time machine gestartet. nach 5 minuten waren auch alle dateien wiederhergestellt. ok. mail starten&#8230;.. struktur da - keine emails - ARGH!!</p>
<p>also.. nachdenken.. was kanns sein&#8230; cache nicht synchron? bestimmt macht der das mit irgendwelchen caches.. index-caches&#8230; etwas gegoogled und was gefunden: &#8220;~/Library/Mail/Envelope Index ist eine sqlite db&#8221;. hmmmmm&#8230; man kann die also aufräumen lassen.. &#8220;sqlite3 ~/Library/Mail/Envelope\ Index vacuum&#8221; ausgeführt und mail gestartet - ging schnell - wieder keine mails :(.</p>
<p>also was noch&#8230; einige posts sprachen davon, dass wenn ich den envelope index lösche, wird er neu erstellt indem er alle emails erneut importiert - sprich scanned und den index daran aufbaut. danach soll er angeblich synchronisieren wo er kann und wo er nicht kann es in ruhe lassen. ok. index-datei gelöscht, mail aufgerufen, import gestartet und 15 minuten später sind alle mails wieder da.</p>
<p>YAY!!! &lt;|:)</p>

]]></content:encoded>
			<wfw:commentRss>http://ok.ryotic.de/blog/2008/06/emails-massenweise-entsorgen-und-das-happening-danach/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
