Archive for 07 September 2006
07 September
/* 0.1 - initial release 0.2 - new option: rewrite mail addresses with [at] and [dot] 0.3 - userdefined placeholders for [at] and [dot] 0.4 - new option: links can be open in new window (default: off) 0.5 - support for SqlTablePrefix */ class NP_AutoLink extends NucleusPlugin { function getName() { return 'AutoLink'; } function getAuthor() { return 'Kai Greve'; } function getURL() { return 'http://kgblog.de/'; } function getVersion() { return '0.5'; } function getDescription() { return 'Automatically creates links for internet and mail addresses'; } function install() { $this->createOption('InternetAddress','Automatically create links for internet addresses ?','yesno','yes'); $this->createOption('NewWindow','Open links in a new window?','yesno','no'); $this->createOption('MailAddress','Automatically create links for mail addresses ?','yesno','yes'); $this->createOption('RewriteMailAddress','Rewrite mail addresses with [at] and [dot]?','yesno','yes'); $this->createOption('at','Placeholder for @','text','[at]'); $this->createOption('dot','Placeholder for .','text','[dot]'); } function getEventList() { return array('PreItem', 'PreComment'); } function Treatment($_text) { global $CONF, $blog; if ($this->getOption('NewWindow') == 'yes') { $nw="onclick=\"javascript:window.open(this.href, '_blank'); return false;\""; } if ($this->getOption('InternetAddress') == 'yes') { $_text = preg_replace('/(\s)([http|https|ftp|file]+:\/\/[a-zA-Z0-9_?=&%;+-.\/]*)/si','\1\2',$_text); $_text = preg_replace('/(\s)(www\.[a-zA-Z0-9_?=&%;+-.\/]*)/si','\1\2',$_text); } $at = $this->getOption('at'); $dot = $this->getOption('dot'); if ($this->getOption('MailAddress') == 'yes') { if ($this->getOption('RewriteMailAddress') == 'no') { $_text = preg_replace('/(\s)([a-zA-Z0-9\._-]+@[a-zA-Z0-9\._-]+\.[a-zA-Z]{2,5})/s','\1\2',$_text); } else { $_text = preg_replace('/(\s)([a-zA-Z0-9\._-]+)@([a-zA-Z0-9\._-]+)\.([a-zA-Z]{2,5})/s','\1\2'.$at.'\3'.$dot.'\4',$_text); } } if ($this->getOption('MailAddress') == 'no' && $this->getOption('RewriteMailAddress') == 'yes'){ $_text = preg_replace('/(\s)([a-zA-Z0-9\._-]+)@([a-zA-Z0-9\._-]+)\.([a-zA-Z]{2,5})/s','\1\2'.$at.'\3'.$dot.'\4',$_text); } return $_text; } function event_PreItem($_data) { $_data[item]->body = $this->Treatment($_data[item]->body); $_data[item]->more = $this->Treatment($_data[item]->more); } function event_PreComment($_data) { $_data['comment']['body'] = $this->Treatment($_data['comment']['body']); } function supportsFeature ($what) { switch ($what) { case 'SqlTablePrefix': return 1; default: return 0; } } } ?>CNC King
Weil es ja irgendwann mal sein kann, dass Merchandising für die Kongresse zu machen ist ... hier mal ein Hersteller von Grindern und dergleichen Gebrauchsgegenstände für Raucher und andere Hedonisten. Die können das auch mit ner schicken Laser-Gravur im Firmendesign versehen.Space case 40mm with magnets, made from solid aerospace quality aluminium, they will last a life time.
CNC King
Einfach Flattrn wenn es gefällt - Danke.