<?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>blog  schaufler &#187; Script</title>
	<atom:link href="http://blog.schaufler.ch/archiv/category/script/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.schaufler.ch</link>
	<description>Just another WordPress weblog</description>
	<lastBuildDate>Sat, 24 Dec 2011 10:25:11 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>CSS3 &amp; Responsive Web</title>
		<link>http://blog.schaufler.ch/archiv/css3-responsive-web/</link>
		<comments>http://blog.schaufler.ch/archiv/css3-responsive-web/#comments</comments>
		<pubDate>Sun, 18 Dec 2011 22:23:16 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[Script]]></category>
		<category><![CDATA[browser]]></category>
		<category><![CDATA[css3]]></category>

		<guid isPermaLink="false">http://blog.schaufler.ch/?p=599</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<p><object style="width:480px; height:385px;" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="100" height="100" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="data" value="http://www.youtube.com/v/lbdndWo35tY?version=3" /><param name="src" value="http://www.youtube.com/v/lbdndWo35tY?version=3" /><embed style="width:480px; height:385px;" type="application/x-shockwave-flash" width="100" height="100" src="http://www.youtube.com/v/lbdndWo35tY?version=3" data="http://www.youtube.com/v/lbdndWo35tY?version=3"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.schaufler.ch/archiv/css3-responsive-web/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>joomla 1.6 HTML5 Tempalate</title>
		<link>http://blog.schaufler.ch/archiv/joomla-1-6-html5-tempalate/</link>
		<comments>http://blog.schaufler.ch/archiv/joomla-1-6-html5-tempalate/#comments</comments>
		<pubDate>Fri, 02 Dec 2011 12:44:46 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Script]]></category>
		<category><![CDATA[XHTML]]></category>
		<category><![CDATA[html5]]></category>
		<category><![CDATA[joomla]]></category>
		<category><![CDATA[template]]></category>
		<category><![CDATA[valid]]></category>

		<guid isPermaLink="false">http://blog.schaufler.ch/?p=591</guid>
		<description><![CDATA[Ein HTML5 Template valide in Joomla 1.6 einzubauen scheitert erstmals an zwei Fehlern in den Metangaben. In Joomla wird die Metadaten &#8211; Ausgabe im Core gesteuert.

&#60;meta name=&#34;rights&#34; content=&#34;&#34; /&#62;
&#60;meta name=&#34;language&#34; content=&#34;de-DE&#34; /&#62;
&#60;meta name=&#34;title&#34; content=&#34;&#34; /&#62;

Diese Meta &#8211; Angaben werden vom W3c beanstandet.
In libraries -&#62; joomla -&#62; document -&#62; html -&#62; renderer -&#62; head.php muss dieser [...]]]></description>
			<content:encoded><![CDATA[<p>Ein HTML5 Template valide in Joomla 1.6 einzubauen scheitert erstmals an zwei Fehlern in den Metangaben. In Joomla wird die Metadaten &#8211; Ausgabe im Core gesteuert.</p>
<pre class="brush: xml;">
&lt;meta name=&quot;rights&quot; content=&quot;&quot; /&gt;
&lt;meta name=&quot;language&quot; content=&quot;de-DE&quot; /&gt;
&lt;meta name=&quot;title&quot; content=&quot;&quot; /&gt;
</pre>
<p>Diese Meta &#8211; Angaben werden vom W3c beanstandet.</p>
<p>In libraries -&gt; joomla -&gt; document -&gt; html -&gt; renderer -&gt; head.php muss dieser Codeblock:</p>
<pre class="brush: php;">
foreach ($document-&gt;_metaTags as $type =&gt; $tag)
      {
         foreach ($tag as $name =&gt; $content)

         {
            if ($type == 'http-equiv') {
               $content.= '; charset=' . $document-&gt;getCharset();
               $buffer .= $tab.'&lt;meta http-equiv=&quot;'.$name.'&quot; content=&quot;'.htmlspecialchars($content).'&quot;'.$tagEnd.$lnEnd;
            }
            else if ($type == 'standard') {
               $buffer .= $tab.'&lt;meta name=&quot;'.$name.'&quot; content=&quot;'.htmlspecialchars($content).'&quot;'.$tagEnd.$lnEnd;
            }
         }
      }
</pre>
<p>Mit diesem ersetzt werden:</p>
<pre class="brush: php;">
foreach ($document-&gt;_metaTags as $type =&gt; $tag)
      {
         foreach ($tag as $name =&gt; $content)

         {
            if ($type == 'http-equiv') {
               $content.= '; charset=' . $document-&gt;getCharset();
               $buffer .= $tab.'&lt;meta http-equiv=&quot;'.$name.'&quot; content=&quot;'.htmlspecialchars($content).'&quot;'.$tagEnd.$lnEnd;
            }
            else if ($type == 'standard') {
               if ($name == &quot;rights&quot;  || $name == &quot;language&quot; || $name == &quot;title&quot;){
                  continue;
               }else{
               $buffer .= $tab.'&lt;meta name=&quot;'.$name.'&quot; content=&quot;'.htmlspecialchars($content).'&quot;'.$tagEnd.$lnEnd;
               }
            }
         }
      }
</pre>
<p>In den Zeile 11 wird dafür gesorgt, dass besagte Metaangaben nicht mehr in den Header geladen werden. eine elegantere Methode habe ich bis jetzt noch nicht gefunden.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.schaufler.ch/archiv/joomla-1-6-html5-tempalate/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Doppelte Einträge in MySql verhindern</title>
		<link>http://blog.schaufler.ch/archiv/doppelte-eintrage-in-mysql-verhindern/</link>
		<comments>http://blog.schaufler.ch/archiv/doppelte-eintrage-in-mysql-verhindern/#comments</comments>
		<pubDate>Thu, 13 Oct 2011 09:35:07 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Script]]></category>
		<category><![CDATA[Tagging]]></category>
		<category><![CDATA[mysql]]></category>

		<guid isPermaLink="false">http://blog.schaufler.ch/?p=580</guid>
		<description><![CDATA[Doppelte Einträge in die Datenbank sollen verhindert werden.
In einer Snippet &#8211; Datenbank soll ein Tagging &#8211; System Einzug halten. Der Administrator kann nun bei den Snippets die Tags löschen oder neue einfügen (Ajax). Kein Snippets soll über doppelte Tags verfügen.
Zuerst erstelle ich über die ID des Snippet (feld_A) und der ID des Tags (feld_B) einen [...]]]></description>
			<content:encoded><![CDATA[<p>Doppelte Einträge in die Datenbank sollen verhindert werden.</p>
<p>In einer Snippet &#8211; Datenbank soll ein Tagging &#8211; System Einzug halten. Der Administrator kann nun bei den Snippets die Tags löschen oder neue einfügen (Ajax). Kein Snippets soll über doppelte Tags verfügen.</p>
<p>Zuerst erstelle ich über die ID des Snippet (feld_A) und der ID des Tags (feld_B) einen UNIQUE Schlüssel.</p>
<pre class="brush: sql;">
ALTER TABLE tabelle
ADD UNIQUE INDEX myIndex (feld_A, feld_B);
</pre>
<p>Als Alternative kann man auch einen PRIMARY Schlüssel verwenden.</p>
<pre class="brush: sql;">
ALTER TABLE tabelle
ADD PRIMARY KEY (feld_A, feld_B);
</pre>
<p>Danach kann man beim Einfügen des Datensatzes mit INSERT IGNORE arbeiten.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.schaufler.ch/archiv/doppelte-eintrage-in-mysql-verhindern/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Plugin tag.schaufler.ch</title>
		<link>http://blog.schaufler.ch/archiv/plugin-tag-schaufler-ch/</link>
		<comments>http://blog.schaufler.ch/archiv/plugin-tag-schaufler-ch/#comments</comments>
		<pubDate>Wed, 11 May 2011 20:07:28 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Script]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Tagging]]></category>
		<category><![CDATA[erweiterung]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[linkdatenbank]]></category>
		<category><![CDATA[plugin]]></category>
		<category><![CDATA[scuttle]]></category>
		<category><![CDATA[tag.schaufler.ch]]></category>

		<guid isPermaLink="false">http://blog.schaufler.ch/?p=556</guid>
		<description><![CDATA[Ein Plugin für meine Scuttle Linkdatenbank habe ich schon lange. Leider hat die Erweiterung mit dem neuen Firefox Browser nicht mehr funktioniert. Ich habe das Plugin neu angepasst. Download der Version 0.34. Login zum Linksystem gibts auf Anfrage.
]]></description>
			<content:encoded><![CDATA[<p>Ein Plugin für meine Scuttle <a href="http://tag.schaufler.ch">Linkdatenbank</a> habe ich schon lange. Leider hat die Erweiterung mit dem neuen Firefox Browser nicht mehr funktioniert. Ich habe das Plugin neu angepasst. <a href="http://blog.schaufler.ch/wp-content/uploads/2011/06/scuttle-5.xpi">Download der Version 0.34</a>. Login zum <a href="http://tag.schaufler.ch">Linksystem</a> gibts auf Anfrage.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.schaufler.ch/archiv/plugin-tag-schaufler-ch/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Remote debugging JavaScript</title>
		<link>http://blog.schaufler.ch/archiv/remote-debugging-javascript/</link>
		<comments>http://blog.schaufler.ch/archiv/remote-debugging-javascript/#comments</comments>
		<pubDate>Thu, 10 Mar 2011 08:14:54 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Script]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[debug]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[remote]]></category>

		<guid isPermaLink="false">http://blog.schaufler.ch/?p=536</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<p><object type="application/x-shockwave-flash" style="width:480px; height:385px;" data="http://www.youtube.com/v/DSH392Gxaho?showsearch=0&amp;showinfo=0"><param name="movie" value="http://www.youtube.com/v/DSH392Gxaho?showsearch=0&amp;showinfo=0" /></object></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.schaufler.ch/archiv/remote-debugging-javascript/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CSS minimieren und komprimieren mit PHP</title>
		<link>http://blog.schaufler.ch/archiv/css-minimieren-und-komprimieren-mit-php/</link>
		<comments>http://blog.schaufler.ch/archiv/css-minimieren-und-komprimieren-mit-php/#comments</comments>
		<pubDate>Fri, 06 Aug 2010 11:44:44 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[Script]]></category>
		<category><![CDATA[komprimieren]]></category>
		<category><![CDATA[minimieren]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://blog.schaufler.ch/?p=465</guid>
		<description><![CDATA[Heute sind CSS Dateien von 200 &#8211; 300 KB grösse keine Seltenheit. Auch in Zukunft werden Cascading Style Sheets immer grösser und komplexer werden. Natürlich gibt es Werkzeuge die CSS komprimieren. Beim Minimieren und/oder Komprimieren, leidet oft die Übersichtlichkeit in den entsprechenden Dateien. Gegen das Aufsplitten in einzelne Teile spricht die Performance (zu viele Requests). [...]]]></description>
			<content:encoded><![CDATA[<p>Heute sind CSS Dateien von 200 &#8211; 300 KB grösse keine Seltenheit. Auch in Zukunft werden Cascading Style Sheets immer grösser und komplexer werden. Natürlich gibt es <a href="http://schaufler.ch/csstidy">Werkzeuge die CSS komprimieren</a>. Beim Minimieren und/oder Komprimieren, leidet oft die Übersichtlichkeit in den entsprechenden Dateien. Gegen das Aufsplitten in einzelne Teile spricht die Performance (zu viele Requests). </p>
<p>Hier eine elegante Idee, wie man die Übersichtlichkeit von CSS erhöht, und deren Grösse massiv reduziert. Die CSS &#8211; Datei wird dabei durch den PHP Parser geschickt und heisst nun style.php.</p>
<pre class="brush: xml;">
&lt;link rel=&quot;stylesheet&quot; href=&quot;css/style.php&quot; type=&quot;text/css&quot; media=&quot;screen, projection&quot; /&gt;
</pre>
<p>Danach werden die einzelnen CSS Dateien geladen und vom Server komprimiert (ohne Kommentare und Zeilenabstände) ausgeliefert. </p>
<pre class="brush: php;">
&lt;?php
  header('Content-type: text/css');
  ob_start(&quot;compress&quot;);
  function compress($buffer) {
    /*Kommentar entfernen */
    $buffer = preg_replace('!/\*[^*]*\*+([^/][^*]*\*+)*/!', '', $buffer);
    /* entfernen von abständen, Zeilen usw.*/
    $buffer = str_replace(array(&quot;\r\n&quot;, &quot;\r&quot;, &quot;\n&quot;, &quot;\t&quot;, '  ', '    ', '    '), '', $buffer);
    return $buffer;
  }
  /*lade CSS Dateien */
  include('css/reset.css');
  include('css/layout.css');
  include('css/navi.css');
  include('css/forms.css');
  ob_end_flush();
?&gt;
</pre>
<p>Das gefällt mir. Sauber zum arbeiten und schlank in der Anwendung ist Die Reinhold Weber &#8211; Methode. Gefunden bei <a href="http://www.catswhocode.com/blog/3-ways-to-compress-css-files-using-php">catswhocode.com</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.schaufler.ch/archiv/css-minimieren-und-komprimieren-mit-php/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Der Webentwickler als Hacker</title>
		<link>http://blog.schaufler.ch/archiv/der-webentwickler-als-hacker/</link>
		<comments>http://blog.schaufler.ch/archiv/der-webentwickler-als-hacker/#comments</comments>
		<pubDate>Wed, 05 May 2010 12:01:01 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Script]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[blog]]></category>
		<category><![CDATA[hacking]]></category>
		<category><![CDATA[jarlsberg]]></category>
		<category><![CDATA[server]]></category>
		<category><![CDATA[sicherheit]]></category>

		<guid isPermaLink="false">http://blog.schaufler.ch/?p=459</guid>
		<description><![CDATA[Google Code hat eine neue Webapplikation online gestellt, die noch löchriger ist sein Name (Jarlsberg, so der Name, ist ein norwegischer Käse). Jarlsberg ist ein mit Absicht unsicher programmierter Blog. Der schlanke, in Python geschriebene Jarlsberg-Server lässt sich auch downloaden und lokal installieren.
Die Applikation hat viele Schwachstellen. Cross-Site Scripting, Cookie Manipulationen, CSRF, SQL Injection, Pishing, [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.schaufler.ch/wp-content/uploads/2010/06/jarlsberg.jpg"><img class="align" title="jarlsberg" src="http://blog.schaufler.ch/wp-content/uploads/2010/06/jarlsberg.jpg" alt="" width="78" height="78" /></a>Google Code hat eine neue <a href="http://jarlsberg.appspot.com/">Webapplikation</a> online gestellt, die noch löchriger ist sein Name (Jarlsberg, so der Name, ist ein norwegischer Käse). <a href="http://jarlsberg.appspot.com/start">Jarlsberg</a> ist ein mit Absicht unsicher programmierter Blog. Der schlanke, in Python geschriebene Jarlsberg-Server lässt sich auch downloaden und lokal installieren.</p>
<p>Die Applikation hat viele Schwachstellen. Cross-Site Scripting, Cookie Manipulationen, CSRF, SQL Injection, Pishing, DoS, können live ausprobiert werden, damit hat man schnell erste Erfolgserlebnisse. Zu jeder dieser Lücken gibt es Beschreibungen und Hilfestellungen.  Wie die Hacks funktionieren und wie die Schwachstellen im Code behoben werden können, wird ausführlich erklärt.</p>
<p>Nun aber auf zum fröhlichen hacken für Webworker. Damit Ihr auch herausfindet, was genau in der Datei <em>secret.txt</em> steht.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.schaufler.ch/archiv/der-webentwickler-als-hacker/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Für Internetausdrucker</title>
		<link>http://blog.schaufler.ch/archiv/fur-internetausdrucker/</link>
		<comments>http://blog.schaufler.ch/archiv/fur-internetausdrucker/#comments</comments>
		<pubDate>Thu, 11 Feb 2010 15:17:06 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[Script]]></category>
		<category><![CDATA[drucken]]></category>
		<category><![CDATA[print]]></category>
		<category><![CDATA[print.css]]></category>
		<category><![CDATA[stylesheet]]></category>

		<guid isPermaLink="false">http://blog.schaufler.ch/?p=429</guid>
		<description><![CDATA[Natürlich werden Webseiten auch mal ausgedruckt. Nicht selten erlebt man dabei einige Überraschungen. Navigationen, Suchfelder und Banner haben auf einem Ausdruck nicht viel verloren. Eine dem Medium angepasste Typographie, klare Gliederung der Inhalte werden auch auf Papier geschätzt. Das alles kann ein spezielles Stylesheet für den print &#8211; Bereich erreichen. Der Link dazu wird in [...]]]></description>
			<content:encoded><![CDATA[<p>Natürlich werden Webseiten auch mal ausgedruckt. Nicht selten erlebt man dabei einige Überraschungen. Navigationen, Suchfelder und Banner haben auf einem Ausdruck nicht viel verloren. Eine dem Medium angepasste Typographie, klare Gliederung der Inhalte werden auch auf Papier geschätzt. Das alles kann ein spezielles Stylesheet für den print &#8211; Bereich erreichen. Der Link dazu wird in den Header der  Webseite eingebunden.</p>
<pre class="brush: css;">&lt;link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; media=&quot;print&quot; href=&quot;http://DeineWebseite/print.css&quot; /&gt;</pre>
<p>Die print.css Datei erhält nun die Informationen der Anzeigebreite (100%), floating wird deaktiviert und auch die Typographie wird Seitenweit optimiert. im Printbereich wird die <strong>Schriftgrösse in Punkte</strong> angegeben (pt).</p>
<pre class="brush: css;">body {
font-family: Garamond,&quot;Times New Roman&quot;, serif;
color: #000;
background: none;
font-size: 12pt;
background:none;
color:#000;
width:100%;
float:none;
margin:0;
}</pre>
<p>Alle Elemente die nicht ausgedruckt werden, können mit dem Befehl &#8220;display:none&#8221; ausgeblendet werden.</p>
<pre class="brush: css;">
#header,#menu,#navigation,#Sidebar,#footer{
display:none;
</pre>
<p>Im Web nutzen wir ja schon lange &#8220;sprechende Links&#8221;. Hier benötigen wir aber &#8220;schreibende links&#8221;. Mit wenigen Code &#8211; Zeilen sorgen wir dafür dass die URL&#8217;s der Links mit ausgedruckt werden (Geht im IE nicht).</p>
<pre class="brush: css;">a:link[href^=&quot;http://&quot;]:after, a[href^=&quot;http://&quot;]:visited:after {
content: &quot; (&quot; attr(href) &quot;) &quot;;
font-size: 90%;
}
a[href^=&quot;http://&quot;] {
color:#000;
}</pre>
<p>Danach sollten noch die Linkfarben (Kontrast) verändert werden. Natürlich kann man auch noch Überschriften Code, Zitate und weiteres aufhübschen.</p>
<pre class="brush: css;">a:link,a:visited {
color:#520;
background:transparent;
font-weight:700;
text-decoration:underline;
}

code {
font:10pt Courier, monospace;
}

blockquote {
font-size:10pt;
margin:1.3em;
padding:1em;
}

h1,h2,h3,h4,h5,h6 {
font-family:Helvetica, Arial, sans-serif;
}

h1 {
font-size:16pt;
}

h2 {
font-size:15pt;
}</pre>
<p>Dieses css Script kann man sich auch im Stück <a href='http://blog.schaufler.ch/wp-content/uploads/2010/02/print.css'>runterladen</a>. Weitere Informationen um Thema Print Stylesheet gibt es bei <a href="http://aktuell.de.selfhtml.org/artikel/css/drucklayout/">Selfhtml</a> oder <a href="http://css-tricks.com/css-tricks-finally-gets-a-print-stylesheet/">Chris Coyier</a>. Wie das mit den  manuellen Seitenumbrüchen geht sagt uns <a href="http://davidwalsh.name/css-page-breaks">David Walsh</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.schaufler.ch/archiv/fur-internetausdrucker/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Zen Coding mit Dreamweaver</title>
		<link>http://blog.schaufler.ch/archiv/zen-coding-mit-dreamweaver/</link>
		<comments>http://blog.schaufler.ch/archiv/zen-coding-mit-dreamweaver/#comments</comments>
		<pubDate>Mon, 11 Jan 2010 13:30:54 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[Script]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[XHTML]]></category>

		<guid isPermaLink="false">http://blog.schaufler.ch/?p=416</guid>
		<description><![CDATA[Beim Code schreiben, sind die Snippets gern und oft gebrauchte Abkürzungen um den Code schneller und effizienter zu erstellen. Neben den Snippets die ich auch aktiv in meinem Lieblingseditor einsetze, nutze ich seit letztem Jahr Zen-Coding. Zen-Coding ist in etwa eine intelligente Codeschnipsel-Verwaltung. Es erleichtert das schreiben von Code ungemein. Die Idee, Code effizient mit [...]]]></description>
			<content:encoded><![CDATA[<p>Beim Code schreiben, sind die Snippets gern und oft gebrauchte Abkürzungen um den Code schneller und effizienter zu erstellen. Neben den <a href="http://live.gnome.org/Gedit/Plugins/Snippets">Snippets</a> die ich auch aktiv in meinem <a href="http://projects.gnome.org/gedit/">Lieblingseditor</a> einsetze, nutze ich seit letztem Jahr <a href="http://code.google.com/p/zen-coding/">Zen-Coding</a>. Zen-Coding ist in etwa eine intelligente Codeschnipsel-Verwaltung. Es erleichtert das schreiben von Code ungemein. Die Idee, Code effizient mit Snippets zu schreiben, verbreitet sich unter allen Betriebssystemen. Einer der ersten war wohl <a href="http://macromates.com/">Textmate</a> (mac), auch <a href="http://projects.gnome.org/gedit/">gedit</a> (linux) nutzt eine Snippet-Verwaltung und unter Windows verwende ich als Code-Editor gerne <a href="http://intype.info">Intype</a>.</p>
<p>Nun habe ich festgestellt, dass es auch für den Dreamweaver CS4 (MAC und WIN) eine Zen-coding Extension gibt. die .mxp Datei kann man nach dem <a href="http://zen-coding.googlecode.com/files/Zen%20Coding.mxp">download</a> mit dem Extension Manager installieren.</p>
<p>Für alle nicht wysiwyg-Coder:<br />
Gedit gibt es nun auch für <a href="http://ftp.gnome.org/pub/gnome/binaries/win32/gedit/">Windows.</a> Sogar eine  <a href="http://portableapps.com/node/20902">portable Betaversion</a> habe ich gefunden.<br />
Wie Zen-Coding mit dem Editor <a href="http://macrabbit.com/espresso/">Espresso</a> (MAC) funktioniert, zeigt dieses Video.</p>
<p><object type="application/x-shockwave-flash" style="width:480px; height:295px;" data="http://vimeo.com/moogaloop.swf?clip_id=7405114&amp;server=vimeo.com&amp;show_title=0&amp;show_byline=0&amp;show_portrait=0&amp;color=ff9933&amp;fullscreen=1"><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=7405114&amp;server=vimeo.com&amp;show_title=0&amp;show_byline=0&amp;show_portrait=0&amp;color=ff9933&amp;fullscreen=1" /></object></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.schaufler.ch/archiv/zen-coding-mit-dreamweaver/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Hacked</title>
		<link>http://blog.schaufler.ch/archiv/hacked/</link>
		<comments>http://blog.schaufler.ch/archiv/hacked/#comments</comments>
		<pubDate>Thu, 22 Oct 2009 07:42:36 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Script]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[hacking]]></category>
		<category><![CDATA[plesk]]></category>
		<category><![CDATA[provider]]></category>
		<category><![CDATA[server]]></category>

		<guid isPermaLink="false">http://blog.schaufler.ch/?p=393</guid>
		<description><![CDATA[Aufmerksame Leser meiner Seiten haben es gemerkt. Mein (virtueller) Server wurde gecrackt. Der Einbruch erfolgte über eine veraltete Plesk Version 9. 0.1 auf Serverebene. Natürlich waren  auch noch viele andere Domains von diesem Einbruch betroffen.
Das Problem wurde uns erstmals um ca. 22:10 gemolden
Ist schon möglich, wobei ich exakt um 21.41 den Einbruch per Telefon &#8220;gemolden&#8221;  [...]]]></description>
			<content:encoded><![CDATA[<p>Aufmerksame Leser meiner Seiten haben es gemerkt. Mein (virtueller) Server wurde gecrackt. Der Einbruch erfolgte über <span style="text-decoration: line-through;">eine veraltete</span> Plesk Version 9. 0.1 auf Serverebene. Natürlich waren  auch noch viele andere Domains von diesem Einbruch betroffen.</p>
<blockquote><p>Das Problem wurde uns erstmals um ca. 22:10 gemolden</p></blockquote>
<p>Ist schon möglich, wobei ich exakt um 21.41 den Einbruch per Telefon &#8220;gemolden&#8221;  habe.<br />
Auf allen diesen Domains wurde die Dateien index* überschrieben. <a href="http://www.unaxus.com/switzerland/">Der Provider</a> konnte die Backups nicht bei allen einspielen.</p>
<blockquote><p>Es war jedoch technisch bedingt nicht möglich alle index Seiten wieder herzustellen</p></blockquote>
<p>In<a href="http://forum.chip.de/webspace-webserver-webhosting/unaxus-host2day-server-gehackt-1291448.html#post7678072"> einem Forum</a> habe ich dann noch genaueres von Unaxus erfahren, danke. In 12 Jahren habe ich schon einiges erlebt bezüglich hosting und virtuellen Servern. Im letzten Jahrtausend die Episode agri.ch (heute Green). Danach<a href="http://blog.schaufler.ch/archiv/hostpoint-down-ii/"> Hostpoint</a> und nun das. Macht mich ziemlich ratlos, das ganze.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.schaufler.ch/archiv/hacked/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

